@salesforce/b2c-tooling-sdk 0.1.0 → 0.2.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 (281) hide show
  1. package/dist/cjs/auth/index.d.ts +2 -0
  2. package/dist/cjs/auth/index.js +2 -0
  3. package/dist/cjs/auth/index.js.map +1 -1
  4. package/dist/cjs/auth/middleware.d.ts +196 -0
  5. package/dist/cjs/auth/middleware.js +190 -0
  6. package/dist/cjs/auth/middleware.js.map +1 -0
  7. package/dist/cjs/auth/oauth.js +21 -9
  8. package/dist/cjs/auth/oauth.js.map +1 -1
  9. package/dist/cjs/cli/base-command.d.ts +15 -0
  10. package/dist/cjs/cli/base-command.js +58 -2
  11. package/dist/cjs/cli/base-command.js.map +1 -1
  12. package/dist/cjs/cli/hooks.d.ts +98 -5
  13. package/dist/cjs/cli/hooks.js.map +1 -1
  14. package/dist/cjs/cli/instance-command.d.ts +1 -0
  15. package/dist/cjs/cli/mrt-command.d.ts +2 -1
  16. package/dist/cjs/cli/mrt-command.js +3 -2
  17. package/dist/cjs/cli/mrt-command.js.map +1 -1
  18. package/dist/cjs/cli/oauth-command.d.ts +1 -0
  19. package/dist/cjs/cli/oauth-command.js +6 -0
  20. package/dist/cjs/cli/oauth-command.js.map +1 -1
  21. package/dist/cjs/cli/ods-command.d.ts +1 -0
  22. package/dist/cjs/cli/webdav-command.d.ts +1 -0
  23. package/dist/cjs/clients/cdn-zones.d.ts +154 -0
  24. package/dist/cjs/clients/cdn-zones.generated.d.ts +8330 -0
  25. package/dist/cjs/clients/cdn-zones.generated.js +6 -0
  26. package/dist/cjs/clients/cdn-zones.generated.js.map +1 -0
  27. package/dist/cjs/clients/cdn-zones.js +100 -0
  28. package/dist/cjs/clients/cdn-zones.js.map +1 -0
  29. package/dist/cjs/clients/error-utils.d.ts +35 -0
  30. package/dist/cjs/clients/error-utils.js +69 -0
  31. package/dist/cjs/clients/error-utils.js.map +1 -0
  32. package/dist/cjs/clients/index.d.ts +8 -2
  33. package/dist/cjs/clients/index.js +6 -1
  34. package/dist/cjs/clients/index.js.map +1 -1
  35. package/dist/cjs/clients/middleware-registry.d.ts +1 -1
  36. package/dist/cjs/clients/middleware-registry.js.map +1 -1
  37. package/dist/cjs/clients/middleware.d.ts +25 -0
  38. package/dist/cjs/clients/middleware.js +16 -10
  39. package/dist/cjs/clients/middleware.js.map +1 -1
  40. package/dist/cjs/clients/mrt-b2c.d.ts +114 -0
  41. package/dist/cjs/clients/mrt-b2c.generated.d.ts +176 -0
  42. package/dist/cjs/clients/mrt-b2c.generated.js +6 -0
  43. package/dist/cjs/clients/mrt-b2c.generated.js.map +1 -0
  44. package/dist/cjs/clients/mrt-b2c.js +86 -0
  45. package/dist/cjs/clients/mrt-b2c.js.map +1 -0
  46. package/dist/cjs/clients/user-agent.d.ts +43 -0
  47. package/dist/cjs/clients/user-agent.js +87 -0
  48. package/dist/cjs/clients/user-agent.js.map +1 -0
  49. package/dist/cjs/config/dw-json.d.ts +6 -0
  50. package/dist/cjs/config/dw-json.js.map +1 -1
  51. package/dist/cjs/config/mapping.js +3 -0
  52. package/dist/cjs/config/mapping.js.map +1 -1
  53. package/dist/cjs/config/resolver.d.ts +2 -1
  54. package/dist/cjs/config/resolver.js +14 -7
  55. package/dist/cjs/config/resolver.js.map +1 -1
  56. package/dist/cjs/config/sources/dw-json-source.d.ts +1 -0
  57. package/dist/cjs/config/sources/dw-json-source.js +1 -0
  58. package/dist/cjs/config/sources/dw-json-source.js.map +1 -1
  59. package/dist/cjs/config/sources/index.d.ts +1 -0
  60. package/dist/cjs/config/sources/index.js +1 -0
  61. package/dist/cjs/config/sources/index.js.map +1 -1
  62. package/dist/cjs/config/sources/mobify-source.d.ts +1 -0
  63. package/dist/cjs/config/sources/mobify-source.js +1 -0
  64. package/dist/cjs/config/sources/mobify-source.js.map +1 -1
  65. package/dist/cjs/config/sources/package-json-source.d.ts +14 -0
  66. package/dist/cjs/config/sources/package-json-source.js +86 -0
  67. package/dist/cjs/config/sources/package-json-source.js.map +1 -0
  68. package/dist/cjs/config/types.d.ts +14 -0
  69. package/dist/cjs/index.d.ts +3 -2
  70. package/dist/cjs/index.js +3 -1
  71. package/dist/cjs/index.js.map +1 -1
  72. package/dist/cjs/operations/code/deploy.js +9 -3
  73. package/dist/cjs/operations/code/deploy.js.map +1 -1
  74. package/dist/cjs/operations/mrt/access-control.d.ts +192 -0
  75. package/dist/cjs/operations/mrt/access-control.js +152 -0
  76. package/dist/cjs/operations/mrt/access-control.js.map +1 -0
  77. package/dist/cjs/operations/mrt/b2c-config.d.ts +201 -0
  78. package/dist/cjs/operations/mrt/b2c-config.js +195 -0
  79. package/dist/cjs/operations/mrt/b2c-config.js.map +1 -0
  80. package/dist/cjs/operations/mrt/cache.d.ts +80 -0
  81. package/dist/cjs/operations/mrt/cache.js +65 -0
  82. package/dist/cjs/operations/mrt/cache.js.map +1 -0
  83. package/dist/cjs/operations/mrt/deployment.d.ts +157 -0
  84. package/dist/cjs/operations/mrt/deployment.js +109 -0
  85. package/dist/cjs/operations/mrt/deployment.js.map +1 -0
  86. package/dist/cjs/operations/mrt/env.d.ts +141 -0
  87. package/dist/cjs/operations/mrt/env.js +119 -0
  88. package/dist/cjs/operations/mrt/env.js.map +1 -1
  89. package/dist/cjs/operations/mrt/index.d.ts +24 -4
  90. package/dist/cjs/operations/mrt/index.js +23 -3
  91. package/dist/cjs/operations/mrt/index.js.map +1 -1
  92. package/dist/cjs/operations/mrt/member.d.ts +281 -0
  93. package/dist/cjs/operations/mrt/member.js +244 -0
  94. package/dist/cjs/operations/mrt/member.js.map +1 -0
  95. package/dist/cjs/operations/mrt/notification.d.ts +252 -0
  96. package/dist/cjs/operations/mrt/notification.js +206 -0
  97. package/dist/cjs/operations/mrt/notification.js.map +1 -0
  98. package/dist/cjs/operations/mrt/organization.d.ts +80 -0
  99. package/dist/cjs/operations/mrt/organization.js +53 -0
  100. package/dist/cjs/operations/mrt/organization.js.map +1 -0
  101. package/dist/cjs/operations/mrt/project.d.ts +261 -0
  102. package/dist/cjs/operations/mrt/project.js +232 -0
  103. package/dist/cjs/operations/mrt/project.js.map +1 -0
  104. package/dist/cjs/operations/mrt/push.d.ts +122 -8
  105. package/dist/cjs/operations/mrt/push.js +83 -10
  106. package/dist/cjs/operations/mrt/push.js.map +1 -1
  107. package/dist/cjs/operations/mrt/redirect.d.ts +337 -0
  108. package/dist/cjs/operations/mrt/redirect.js +256 -0
  109. package/dist/cjs/operations/mrt/redirect.js.map +1 -0
  110. package/dist/cjs/operations/mrt/user.d.ts +135 -0
  111. package/dist/cjs/operations/mrt/user.js +153 -0
  112. package/dist/cjs/operations/mrt/user.js.map +1 -0
  113. package/dist/cjs/skills/agents.d.ts +41 -0
  114. package/dist/cjs/skills/agents.js +159 -0
  115. package/dist/cjs/skills/agents.js.map +1 -0
  116. package/dist/cjs/skills/github.d.ts +47 -0
  117. package/dist/cjs/skills/github.js +246 -0
  118. package/dist/cjs/skills/github.js.map +1 -0
  119. package/dist/cjs/skills/index.d.ts +42 -0
  120. package/dist/cjs/skills/index.js +14 -0
  121. package/dist/cjs/skills/index.js.map +1 -0
  122. package/dist/cjs/skills/installer.d.ts +34 -0
  123. package/dist/cjs/skills/installer.js +181 -0
  124. package/dist/cjs/skills/installer.js.map +1 -0
  125. package/dist/cjs/skills/parser.d.ts +39 -0
  126. package/dist/cjs/skills/parser.js +131 -0
  127. package/dist/cjs/skills/parser.js.map +1 -0
  128. package/dist/cjs/skills/types.d.ts +134 -0
  129. package/dist/cjs/skills/types.js +7 -0
  130. package/dist/cjs/skills/types.js.map +1 -0
  131. package/dist/cjs/test-utils/config-isolation.d.ts +2 -0
  132. package/dist/cjs/test-utils/config-isolation.js +41 -0
  133. package/dist/cjs/test-utils/config-isolation.js.map +1 -0
  134. package/dist/cjs/test-utils/index.d.ts +1 -0
  135. package/dist/cjs/test-utils/index.js +7 -0
  136. package/dist/cjs/test-utils/index.js.map +1 -0
  137. package/dist/cjs/version.d.ts +14 -0
  138. package/dist/cjs/version.js +29 -0
  139. package/dist/cjs/version.js.map +1 -0
  140. package/dist/esm/auth/index.d.ts +2 -0
  141. package/dist/esm/auth/index.js +2 -0
  142. package/dist/esm/auth/index.js.map +1 -1
  143. package/dist/esm/auth/middleware.d.ts +196 -0
  144. package/dist/esm/auth/middleware.js +190 -0
  145. package/dist/esm/auth/middleware.js.map +1 -0
  146. package/dist/esm/auth/oauth.js +21 -9
  147. package/dist/esm/auth/oauth.js.map +1 -1
  148. package/dist/esm/cli/base-command.d.ts +15 -0
  149. package/dist/esm/cli/base-command.js +58 -2
  150. package/dist/esm/cli/base-command.js.map +1 -1
  151. package/dist/esm/cli/hooks.d.ts +98 -5
  152. package/dist/esm/cli/hooks.js.map +1 -1
  153. package/dist/esm/cli/instance-command.d.ts +1 -0
  154. package/dist/esm/cli/mrt-command.d.ts +2 -1
  155. package/dist/esm/cli/mrt-command.js +3 -2
  156. package/dist/esm/cli/mrt-command.js.map +1 -1
  157. package/dist/esm/cli/oauth-command.d.ts +1 -0
  158. package/dist/esm/cli/oauth-command.js +6 -0
  159. package/dist/esm/cli/oauth-command.js.map +1 -1
  160. package/dist/esm/cli/ods-command.d.ts +1 -0
  161. package/dist/esm/cli/webdav-command.d.ts +1 -0
  162. package/dist/esm/clients/cdn-zones.d.ts +154 -0
  163. package/dist/esm/clients/cdn-zones.generated.d.ts +8330 -0
  164. package/dist/esm/clients/cdn-zones.generated.js +6 -0
  165. package/dist/esm/clients/cdn-zones.generated.js.map +1 -0
  166. package/dist/esm/clients/cdn-zones.js +100 -0
  167. package/dist/esm/clients/cdn-zones.js.map +1 -0
  168. package/dist/esm/clients/error-utils.d.ts +35 -0
  169. package/dist/esm/clients/error-utils.js +69 -0
  170. package/dist/esm/clients/error-utils.js.map +1 -0
  171. package/dist/esm/clients/index.d.ts +8 -2
  172. package/dist/esm/clients/index.js +6 -1
  173. package/dist/esm/clients/index.js.map +1 -1
  174. package/dist/esm/clients/middleware-registry.d.ts +1 -1
  175. package/dist/esm/clients/middleware-registry.js.map +1 -1
  176. package/dist/esm/clients/middleware.d.ts +25 -0
  177. package/dist/esm/clients/middleware.js +16 -10
  178. package/dist/esm/clients/middleware.js.map +1 -1
  179. package/dist/esm/clients/mrt-b2c.d.ts +114 -0
  180. package/dist/esm/clients/mrt-b2c.generated.d.ts +176 -0
  181. package/dist/esm/clients/mrt-b2c.generated.js +6 -0
  182. package/dist/esm/clients/mrt-b2c.generated.js.map +1 -0
  183. package/dist/esm/clients/mrt-b2c.js +86 -0
  184. package/dist/esm/clients/mrt-b2c.js.map +1 -0
  185. package/dist/esm/clients/user-agent.d.ts +43 -0
  186. package/dist/esm/clients/user-agent.js +87 -0
  187. package/dist/esm/clients/user-agent.js.map +1 -0
  188. package/dist/esm/config/dw-json.d.ts +6 -0
  189. package/dist/esm/config/dw-json.js.map +1 -1
  190. package/dist/esm/config/mapping.js +3 -0
  191. package/dist/esm/config/mapping.js.map +1 -1
  192. package/dist/esm/config/resolver.d.ts +2 -1
  193. package/dist/esm/config/resolver.js +14 -7
  194. package/dist/esm/config/resolver.js.map +1 -1
  195. package/dist/esm/config/sources/dw-json-source.d.ts +1 -0
  196. package/dist/esm/config/sources/dw-json-source.js +1 -0
  197. package/dist/esm/config/sources/dw-json-source.js.map +1 -1
  198. package/dist/esm/config/sources/index.d.ts +1 -0
  199. package/dist/esm/config/sources/index.js +1 -0
  200. package/dist/esm/config/sources/index.js.map +1 -1
  201. package/dist/esm/config/sources/mobify-source.d.ts +1 -0
  202. package/dist/esm/config/sources/mobify-source.js +1 -0
  203. package/dist/esm/config/sources/mobify-source.js.map +1 -1
  204. package/dist/esm/config/sources/package-json-source.d.ts +14 -0
  205. package/dist/esm/config/sources/package-json-source.js +86 -0
  206. package/dist/esm/config/sources/package-json-source.js.map +1 -0
  207. package/dist/esm/config/types.d.ts +14 -0
  208. package/dist/esm/index.d.ts +3 -2
  209. package/dist/esm/index.js +3 -1
  210. package/dist/esm/index.js.map +1 -1
  211. package/dist/esm/operations/code/deploy.js +9 -3
  212. package/dist/esm/operations/code/deploy.js.map +1 -1
  213. package/dist/esm/operations/mrt/access-control.d.ts +192 -0
  214. package/dist/esm/operations/mrt/access-control.js +152 -0
  215. package/dist/esm/operations/mrt/access-control.js.map +1 -0
  216. package/dist/esm/operations/mrt/b2c-config.d.ts +201 -0
  217. package/dist/esm/operations/mrt/b2c-config.js +195 -0
  218. package/dist/esm/operations/mrt/b2c-config.js.map +1 -0
  219. package/dist/esm/operations/mrt/cache.d.ts +80 -0
  220. package/dist/esm/operations/mrt/cache.js +65 -0
  221. package/dist/esm/operations/mrt/cache.js.map +1 -0
  222. package/dist/esm/operations/mrt/deployment.d.ts +157 -0
  223. package/dist/esm/operations/mrt/deployment.js +109 -0
  224. package/dist/esm/operations/mrt/deployment.js.map +1 -0
  225. package/dist/esm/operations/mrt/env.d.ts +141 -0
  226. package/dist/esm/operations/mrt/env.js +119 -0
  227. package/dist/esm/operations/mrt/env.js.map +1 -1
  228. package/dist/esm/operations/mrt/index.d.ts +24 -4
  229. package/dist/esm/operations/mrt/index.js +23 -3
  230. package/dist/esm/operations/mrt/index.js.map +1 -1
  231. package/dist/esm/operations/mrt/member.d.ts +281 -0
  232. package/dist/esm/operations/mrt/member.js +244 -0
  233. package/dist/esm/operations/mrt/member.js.map +1 -0
  234. package/dist/esm/operations/mrt/notification.d.ts +252 -0
  235. package/dist/esm/operations/mrt/notification.js +206 -0
  236. package/dist/esm/operations/mrt/notification.js.map +1 -0
  237. package/dist/esm/operations/mrt/organization.d.ts +80 -0
  238. package/dist/esm/operations/mrt/organization.js +53 -0
  239. package/dist/esm/operations/mrt/organization.js.map +1 -0
  240. package/dist/esm/operations/mrt/project.d.ts +261 -0
  241. package/dist/esm/operations/mrt/project.js +232 -0
  242. package/dist/esm/operations/mrt/project.js.map +1 -0
  243. package/dist/esm/operations/mrt/push.d.ts +122 -8
  244. package/dist/esm/operations/mrt/push.js +83 -10
  245. package/dist/esm/operations/mrt/push.js.map +1 -1
  246. package/dist/esm/operations/mrt/redirect.d.ts +337 -0
  247. package/dist/esm/operations/mrt/redirect.js +256 -0
  248. package/dist/esm/operations/mrt/redirect.js.map +1 -0
  249. package/dist/esm/operations/mrt/user.d.ts +135 -0
  250. package/dist/esm/operations/mrt/user.js +153 -0
  251. package/dist/esm/operations/mrt/user.js.map +1 -0
  252. package/dist/esm/skills/agents.d.ts +41 -0
  253. package/dist/esm/skills/agents.js +159 -0
  254. package/dist/esm/skills/agents.js.map +1 -0
  255. package/dist/esm/skills/github.d.ts +47 -0
  256. package/dist/esm/skills/github.js +246 -0
  257. package/dist/esm/skills/github.js.map +1 -0
  258. package/dist/esm/skills/index.d.ts +42 -0
  259. package/dist/esm/skills/index.js +14 -0
  260. package/dist/esm/skills/index.js.map +1 -0
  261. package/dist/esm/skills/installer.d.ts +34 -0
  262. package/dist/esm/skills/installer.js +181 -0
  263. package/dist/esm/skills/installer.js.map +1 -0
  264. package/dist/esm/skills/parser.d.ts +39 -0
  265. package/dist/esm/skills/parser.js +131 -0
  266. package/dist/esm/skills/parser.js.map +1 -0
  267. package/dist/esm/skills/types.d.ts +134 -0
  268. package/dist/esm/skills/types.js +7 -0
  269. package/dist/esm/skills/types.js.map +1 -0
  270. package/dist/esm/test-utils/config-isolation.d.ts +2 -0
  271. package/dist/esm/test-utils/config-isolation.js +41 -0
  272. package/dist/esm/test-utils/config-isolation.js.map +1 -0
  273. package/dist/esm/test-utils/index.d.ts +1 -0
  274. package/dist/esm/test-utils/index.js +7 -0
  275. package/dist/esm/test-utils/index.js.map +1 -0
  276. package/dist/esm/version.d.ts +14 -0
  277. package/dist/esm/version.js +29 -0
  278. package/dist/esm/version.js.map +1 -0
  279. package/package.json +24 -2
  280. package/specs/cdn-zones-v1.yaml +9324 -0
  281. package/specs/mrt-b2c.json +384 -0
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Project operations for Managed Runtime.
3
+ *
4
+ * Handles CRUD operations for MRT projects.
5
+ *
6
+ * @module operations/mrt/project
7
+ */
8
+ import type { AuthStrategy } from '../../auth/types.js';
9
+ import type { components } from '../../clients/mrt.js';
10
+ /**
11
+ * MRT project type for create/read operations.
12
+ */
13
+ export type MrtProject = components['schemas']['APIProjectV2Create'];
14
+ /**
15
+ * MRT project type for update operations.
16
+ */
17
+ export type MrtProjectUpdate = components['schemas']['APIProjectV2Update'];
18
+ /**
19
+ * Patched project for partial updates.
20
+ */
21
+ export type PatchedMrtProject = components['schemas']['PatchedAPIProjectV2Update'];
22
+ /**
23
+ * SSR region enum.
24
+ */
25
+ export type SsrRegion = components['schemas']['SsrRegionEnum'];
26
+ /**
27
+ * Options for listing MRT projects.
28
+ */
29
+ export interface ListProjectsOptions {
30
+ /**
31
+ * Filter by organization slug.
32
+ */
33
+ organization?: string;
34
+ /**
35
+ * Maximum number of results to return.
36
+ */
37
+ limit?: number;
38
+ /**
39
+ * Offset for pagination.
40
+ */
41
+ offset?: number;
42
+ /**
43
+ * MRT API origin URL.
44
+ * @default "https://cloud.mobify.com"
45
+ */
46
+ origin?: string;
47
+ }
48
+ /**
49
+ * Result of listing projects.
50
+ */
51
+ export interface ListProjectsResult {
52
+ /**
53
+ * Total count of projects.
54
+ */
55
+ count: number;
56
+ /**
57
+ * URL for next page of results.
58
+ */
59
+ next: string | null;
60
+ /**
61
+ * URL for previous page of results.
62
+ */
63
+ previous: string | null;
64
+ /**
65
+ * Array of projects.
66
+ */
67
+ projects: MrtProject[];
68
+ }
69
+ /**
70
+ * Lists projects accessible to the authenticated user.
71
+ *
72
+ * @param options - List options including organization filter and pagination
73
+ * @param auth - Authentication strategy (ApiKeyStrategy)
74
+ * @returns Paginated list of projects
75
+ * @throws Error if request fails
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
80
+ * import { listProjects } from '@salesforce/b2c-tooling-sdk/operations/mrt';
81
+ *
82
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
83
+ *
84
+ * // List all projects
85
+ * const result = await listProjects({}, auth);
86
+ *
87
+ * // List projects for a specific organization
88
+ * const orgProjects = await listProjects({ organization: 'my-org' }, auth);
89
+ * ```
90
+ */
91
+ export declare function listProjects(options: ListProjectsOptions, auth: AuthStrategy): Promise<ListProjectsResult>;
92
+ /**
93
+ * Options for creating an MRT project.
94
+ */
95
+ export interface CreateProjectOptions {
96
+ /**
97
+ * User-friendly name for the project.
98
+ */
99
+ name: string;
100
+ /**
101
+ * Project slug/identifier (auto-generated if not provided).
102
+ */
103
+ slug?: string;
104
+ /**
105
+ * Organization slug to create the project in.
106
+ */
107
+ organization: string;
108
+ /**
109
+ * Project URL.
110
+ */
111
+ url?: string;
112
+ /**
113
+ * Default AWS region for new targets.
114
+ */
115
+ ssrRegion?: SsrRegion;
116
+ /**
117
+ * MRT API origin URL.
118
+ * @default "https://cloud.mobify.com"
119
+ */
120
+ origin?: string;
121
+ }
122
+ /**
123
+ * Creates a new MRT project.
124
+ *
125
+ * @param options - Project creation options
126
+ * @param auth - Authentication strategy (ApiKeyStrategy)
127
+ * @returns The created project
128
+ * @throws Error if creation fails
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
133
+ * import { createProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
134
+ *
135
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
136
+ *
137
+ * const project = await createProject({
138
+ * name: 'My Storefront',
139
+ * organization: 'my-org',
140
+ * ssrRegion: 'us-east-1'
141
+ * }, auth);
142
+ *
143
+ * console.log(`Created project: ${project.slug}`);
144
+ * ```
145
+ */
146
+ export declare function createProject(options: CreateProjectOptions, auth: AuthStrategy): Promise<MrtProject>;
147
+ /**
148
+ * Options for getting an MRT project.
149
+ */
150
+ export interface GetProjectOptions {
151
+ /**
152
+ * Project slug to retrieve.
153
+ */
154
+ projectSlug: string;
155
+ /**
156
+ * MRT API origin URL.
157
+ * @default "https://cloud.mobify.com"
158
+ */
159
+ origin?: string;
160
+ }
161
+ /**
162
+ * Gets a project by slug.
163
+ *
164
+ * @param options - Get options
165
+ * @param auth - Authentication strategy (ApiKeyStrategy)
166
+ * @returns The project
167
+ * @throws Error if request fails
168
+ *
169
+ * @example
170
+ * ```typescript
171
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
172
+ * import { getProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
173
+ *
174
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
175
+ *
176
+ * const project = await getProject({ projectSlug: 'my-storefront' }, auth);
177
+ * console.log(`Project: ${project.name}`);
178
+ * ```
179
+ */
180
+ export declare function getProject(options: GetProjectOptions, auth: AuthStrategy): Promise<MrtProjectUpdate>;
181
+ /**
182
+ * Options for updating an MRT project.
183
+ */
184
+ export interface UpdateProjectOptions {
185
+ /**
186
+ * Project slug to update.
187
+ */
188
+ projectSlug: string;
189
+ /**
190
+ * New name for the project.
191
+ */
192
+ name?: string;
193
+ /**
194
+ * New URL for the project.
195
+ */
196
+ url?: string;
197
+ /**
198
+ * New default AWS region for new targets.
199
+ */
200
+ ssrRegion?: SsrRegion;
201
+ /**
202
+ * MRT API origin URL.
203
+ * @default "https://cloud.mobify.com"
204
+ */
205
+ origin?: string;
206
+ }
207
+ /**
208
+ * Updates an MRT project.
209
+ *
210
+ * @param options - Update options
211
+ * @param auth - Authentication strategy (ApiKeyStrategy)
212
+ * @returns The updated project
213
+ * @throws Error if update fails
214
+ *
215
+ * @example
216
+ * ```typescript
217
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
218
+ * import { updateProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
219
+ *
220
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
221
+ *
222
+ * const updated = await updateProject({
223
+ * projectSlug: 'my-storefront',
224
+ * name: 'My Updated Storefront'
225
+ * }, auth);
226
+ * ```
227
+ */
228
+ export declare function updateProject(options: UpdateProjectOptions, auth: AuthStrategy): Promise<MrtProjectUpdate>;
229
+ /**
230
+ * Options for deleting an MRT project.
231
+ */
232
+ export interface DeleteProjectOptions {
233
+ /**
234
+ * Project slug to delete.
235
+ */
236
+ projectSlug: string;
237
+ /**
238
+ * MRT API origin URL.
239
+ * @default "https://cloud.mobify.com"
240
+ */
241
+ origin?: string;
242
+ }
243
+ /**
244
+ * Deletes an MRT project.
245
+ *
246
+ * @param options - Delete options
247
+ * @param auth - Authentication strategy (ApiKeyStrategy)
248
+ * @throws Error if deletion fails
249
+ *
250
+ * @example
251
+ * ```typescript
252
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
253
+ * import { deleteProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
254
+ *
255
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
256
+ *
257
+ * await deleteProject({ projectSlug: 'my-old-project' }, auth);
258
+ * console.log('Project deleted');
259
+ * ```
260
+ */
261
+ export declare function deleteProject(options: DeleteProjectOptions, auth: AuthStrategy): Promise<void>;
@@ -0,0 +1,232 @@
1
+ import { createMrtClient, DEFAULT_MRT_ORIGIN } from '../../clients/mrt.js';
2
+ import { getLogger } from '../../logging/logger.js';
3
+ /**
4
+ * Lists projects accessible to the authenticated user.
5
+ *
6
+ * @param options - List options including organization filter and pagination
7
+ * @param auth - Authentication strategy (ApiKeyStrategy)
8
+ * @returns Paginated list of projects
9
+ * @throws Error if request fails
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
14
+ * import { listProjects } from '@salesforce/b2c-tooling-sdk/operations/mrt';
15
+ *
16
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
17
+ *
18
+ * // List all projects
19
+ * const result = await listProjects({}, auth);
20
+ *
21
+ * // List projects for a specific organization
22
+ * const orgProjects = await listProjects({ organization: 'my-org' }, auth);
23
+ * ```
24
+ */
25
+ export async function listProjects(options, auth) {
26
+ const logger = getLogger();
27
+ const { organization, limit, offset, origin } = options;
28
+ logger.debug({ organization, limit, offset }, '[MRT] Listing projects');
29
+ const client = createMrtClient({ origin: origin || DEFAULT_MRT_ORIGIN }, auth);
30
+ const { data, error } = await client.GET('/api/projects/', {
31
+ params: {
32
+ query: {
33
+ organization,
34
+ limit,
35
+ offset,
36
+ },
37
+ },
38
+ });
39
+ if (error) {
40
+ const errorMessage = typeof error === 'object' && error !== null && 'message' in error
41
+ ? String(error.message)
42
+ : JSON.stringify(error);
43
+ throw new Error(`Failed to list projects: ${errorMessage}`);
44
+ }
45
+ logger.debug({ count: data.count }, '[MRT] Projects listed');
46
+ return {
47
+ count: data.count ?? 0,
48
+ next: data.next ?? null,
49
+ previous: data.previous ?? null,
50
+ projects: data.results ?? [],
51
+ };
52
+ }
53
+ /**
54
+ * Creates a new MRT project.
55
+ *
56
+ * @param options - Project creation options
57
+ * @param auth - Authentication strategy (ApiKeyStrategy)
58
+ * @returns The created project
59
+ * @throws Error if creation fails
60
+ *
61
+ * @example
62
+ * ```typescript
63
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
64
+ * import { createProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
65
+ *
66
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
67
+ *
68
+ * const project = await createProject({
69
+ * name: 'My Storefront',
70
+ * organization: 'my-org',
71
+ * ssrRegion: 'us-east-1'
72
+ * }, auth);
73
+ *
74
+ * console.log(`Created project: ${project.slug}`);
75
+ * ```
76
+ */
77
+ export async function createProject(options, auth) {
78
+ const logger = getLogger();
79
+ const { name, slug, organization, url, ssrRegion, origin } = options;
80
+ logger.debug({ name, organization }, '[MRT] Creating project');
81
+ const client = createMrtClient({ origin: origin || DEFAULT_MRT_ORIGIN }, auth);
82
+ const body = {
83
+ name,
84
+ organization,
85
+ };
86
+ if (slug) {
87
+ body.slug = slug;
88
+ }
89
+ if (url) {
90
+ body.url = url;
91
+ }
92
+ if (ssrRegion) {
93
+ body.ssr_region = ssrRegion;
94
+ }
95
+ const { data, error } = await client.POST('/api/projects/', {
96
+ body,
97
+ });
98
+ if (error) {
99
+ const errorMessage = typeof error === 'object' && error !== null && 'message' in error
100
+ ? String(error.message)
101
+ : JSON.stringify(error);
102
+ throw new Error(`Failed to create project: ${errorMessage}`);
103
+ }
104
+ logger.debug({ slug: data.slug }, '[MRT] Project created');
105
+ return data;
106
+ }
107
+ /**
108
+ * Gets a project by slug.
109
+ *
110
+ * @param options - Get options
111
+ * @param auth - Authentication strategy (ApiKeyStrategy)
112
+ * @returns The project
113
+ * @throws Error if request fails
114
+ *
115
+ * @example
116
+ * ```typescript
117
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
118
+ * import { getProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
119
+ *
120
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
121
+ *
122
+ * const project = await getProject({ projectSlug: 'my-storefront' }, auth);
123
+ * console.log(`Project: ${project.name}`);
124
+ * ```
125
+ */
126
+ export async function getProject(options, auth) {
127
+ const logger = getLogger();
128
+ const { projectSlug, origin } = options;
129
+ logger.debug({ projectSlug }, '[MRT] Getting project');
130
+ const client = createMrtClient({ origin: origin || DEFAULT_MRT_ORIGIN }, auth);
131
+ const { data, error } = await client.GET('/api/projects/{project_slug}/', {
132
+ params: {
133
+ path: { project_slug: projectSlug },
134
+ },
135
+ });
136
+ if (error) {
137
+ const errorMessage = typeof error === 'object' && error !== null && 'message' in error
138
+ ? String(error.message)
139
+ : JSON.stringify(error);
140
+ throw new Error(`Failed to get project: ${errorMessage}`);
141
+ }
142
+ logger.debug({ slug: data.slug }, '[MRT] Project retrieved');
143
+ return data;
144
+ }
145
+ /**
146
+ * Updates an MRT project.
147
+ *
148
+ * @param options - Update options
149
+ * @param auth - Authentication strategy (ApiKeyStrategy)
150
+ * @returns The updated project
151
+ * @throws Error if update fails
152
+ *
153
+ * @example
154
+ * ```typescript
155
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
156
+ * import { updateProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
157
+ *
158
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
159
+ *
160
+ * const updated = await updateProject({
161
+ * projectSlug: 'my-storefront',
162
+ * name: 'My Updated Storefront'
163
+ * }, auth);
164
+ * ```
165
+ */
166
+ export async function updateProject(options, auth) {
167
+ const logger = getLogger();
168
+ const { projectSlug, name, url, ssrRegion, origin } = options;
169
+ logger.debug({ projectSlug }, '[MRT] Updating project');
170
+ const client = createMrtClient({ origin: origin || DEFAULT_MRT_ORIGIN }, auth);
171
+ const body = {};
172
+ if (name !== undefined) {
173
+ body.name = name;
174
+ }
175
+ if (url !== undefined) {
176
+ body.url = url;
177
+ }
178
+ if (ssrRegion !== undefined) {
179
+ body.ssr_region = ssrRegion;
180
+ }
181
+ const { data, error } = await client.PATCH('/api/projects/{project_slug}/', {
182
+ params: {
183
+ path: { project_slug: projectSlug },
184
+ },
185
+ body,
186
+ });
187
+ if (error) {
188
+ const errorMessage = typeof error === 'object' && error !== null && 'message' in error
189
+ ? String(error.message)
190
+ : JSON.stringify(error);
191
+ throw new Error(`Failed to update project: ${errorMessage}`);
192
+ }
193
+ logger.debug({ slug: data.slug }, '[MRT] Project updated');
194
+ return data;
195
+ }
196
+ /**
197
+ * Deletes an MRT project.
198
+ *
199
+ * @param options - Delete options
200
+ * @param auth - Authentication strategy (ApiKeyStrategy)
201
+ * @throws Error if deletion fails
202
+ *
203
+ * @example
204
+ * ```typescript
205
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
206
+ * import { deleteProject } from '@salesforce/b2c-tooling-sdk/operations/mrt';
207
+ *
208
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
209
+ *
210
+ * await deleteProject({ projectSlug: 'my-old-project' }, auth);
211
+ * console.log('Project deleted');
212
+ * ```
213
+ */
214
+ export async function deleteProject(options, auth) {
215
+ const logger = getLogger();
216
+ const { projectSlug, origin } = options;
217
+ logger.debug({ projectSlug }, '[MRT] Deleting project');
218
+ const client = createMrtClient({ origin: origin || DEFAULT_MRT_ORIGIN }, auth);
219
+ const { error } = await client.DELETE('/api/projects/{project_slug}/', {
220
+ params: {
221
+ path: { project_slug: projectSlug },
222
+ },
223
+ });
224
+ if (error) {
225
+ const errorMessage = typeof error === 'object' && error !== null && 'message' in error
226
+ ? String(error.message)
227
+ : JSON.stringify(error);
228
+ throw new Error(`Failed to delete project: ${errorMessage}`);
229
+ }
230
+ logger.debug({ projectSlug }, '[MRT] Project deleted');
231
+ }
232
+ //# sourceMappingURL=project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../../src/operations/mrt/project.ts"],"names":[],"mappings":"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"}
@@ -96,14 +96,128 @@ export declare function pushBundle(options: PushOptions, auth: AuthStrategy): Pr
96
96
  */
97
97
  export declare function uploadBundle(client: MrtClient, projectSlug: string, bundle: Bundle, target?: string): Promise<PushResult>;
98
98
  /**
99
- * Gets the list of bundles for a project.
100
- *
101
- * @param client - MRT client instance
102
- * @param projectSlug - Project to list bundles for
103
- * @param options - Pagination options
104
- * @returns List of bundles
99
+ * Bundle list item from API.
105
100
  */
106
- export declare function listBundles(client: MrtClient, projectSlug: string, options?: {
101
+ export type MrtBundle = components['schemas']['BundleList'];
102
+ /**
103
+ * Options for listing bundles.
104
+ */
105
+ export interface ListBundlesOptions {
106
+ /**
107
+ * The project slug.
108
+ */
109
+ projectSlug: string;
110
+ /**
111
+ * Maximum number of results to return.
112
+ */
107
113
  limit?: number;
114
+ /**
115
+ * Offset for pagination.
116
+ */
108
117
  offset?: number;
109
- }): Promise<components['schemas']['BundleList'][]>;
118
+ /**
119
+ * MRT API origin URL.
120
+ * @default "https://cloud.mobify.com"
121
+ */
122
+ origin?: string;
123
+ }
124
+ /**
125
+ * Result of listing bundles.
126
+ */
127
+ export interface ListBundlesResult {
128
+ /**
129
+ * Total count of bundles.
130
+ */
131
+ count: number;
132
+ /**
133
+ * URL for next page of results.
134
+ */
135
+ next: string | null;
136
+ /**
137
+ * URL for previous page of results.
138
+ */
139
+ previous: string | null;
140
+ /**
141
+ * Array of bundles.
142
+ */
143
+ bundles: MrtBundle[];
144
+ }
145
+ /**
146
+ * Lists bundles for an MRT project.
147
+ *
148
+ * @param options - List options including project slug
149
+ * @param auth - Authentication strategy (ApiKeyStrategy)
150
+ * @returns Paginated list of bundles
151
+ * @throws Error if request fails
152
+ *
153
+ * @example
154
+ * ```typescript
155
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
156
+ * import { listBundles } from '@salesforce/b2c-tooling-sdk/operations/mrt';
157
+ *
158
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
159
+ *
160
+ * const result = await listBundles({
161
+ * projectSlug: 'my-storefront'
162
+ * }, auth);
163
+ *
164
+ * for (const bundle of result.bundles) {
165
+ * console.log(`Bundle ${bundle.id}: ${bundle.message}`);
166
+ * }
167
+ * ```
168
+ */
169
+ export declare function listBundles(options: ListBundlesOptions, auth: AuthStrategy): Promise<ListBundlesResult>;
170
+ /**
171
+ * Options for downloading a bundle.
172
+ */
173
+ export interface DownloadBundleOptions {
174
+ /**
175
+ * The project slug.
176
+ */
177
+ projectSlug: string;
178
+ /**
179
+ * The bundle ID to download.
180
+ */
181
+ bundleId: number;
182
+ /**
183
+ * MRT API origin URL.
184
+ * @default "https://cloud.mobify.com"
185
+ */
186
+ origin?: string;
187
+ }
188
+ /**
189
+ * Result of getting a bundle download URL.
190
+ */
191
+ export interface DownloadBundleResult {
192
+ /**
193
+ * Presigned URL for downloading the bundle archive.
194
+ * Valid for one hour.
195
+ */
196
+ downloadUrl: string;
197
+ }
198
+ /**
199
+ * Gets a presigned URL to download a bundle archive.
200
+ *
201
+ * The returned URL is valid for one hour.
202
+ *
203
+ * @param options - Download options
204
+ * @param auth - Authentication strategy (ApiKeyStrategy)
205
+ * @returns Download URL result
206
+ * @throws Error if request fails
207
+ *
208
+ * @example
209
+ * ```typescript
210
+ * import { ApiKeyStrategy } from '@salesforce/b2c-tooling-sdk/auth';
211
+ * import { downloadBundle } from '@salesforce/b2c-tooling-sdk/operations/mrt';
212
+ *
213
+ * const auth = new ApiKeyStrategy(process.env.MRT_API_KEY!, 'Authorization');
214
+ *
215
+ * const result = await downloadBundle({
216
+ * projectSlug: 'my-storefront',
217
+ * bundleId: 12345
218
+ * }, auth);
219
+ *
220
+ * console.log(`Download URL: ${result.downloadUrl}`);
221
+ * ```
222
+ */
223
+ export declare function downloadBundle(options: DownloadBundleOptions, auth: AuthStrategy): Promise<DownloadBundleResult>;