@salesforce/b2c-tooling-sdk 1.8.0 → 1.9.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.
- package/dist/cjs/auth/index.d.ts +3 -0
- package/dist/cjs/auth/index.js +2 -0
- package/dist/cjs/auth/index.js.map +1 -1
- package/dist/cjs/auth/jwt-utils.d.ts +25 -0
- package/dist/cjs/auth/jwt-utils.js +66 -0
- package/dist/cjs/auth/jwt-utils.js.map +1 -0
- package/dist/cjs/auth/oauth-implicit.js +4 -1
- package/dist/cjs/auth/oauth-implicit.js.map +1 -1
- package/dist/cjs/auth/oauth-jwt.d.ts +99 -0
- package/dist/cjs/auth/oauth-jwt.js +343 -0
- package/dist/cjs/auth/oauth-jwt.js.map +1 -0
- package/dist/cjs/auth/oauth.d.ts +42 -3
- package/dist/cjs/auth/oauth.js +90 -35
- package/dist/cjs/auth/oauth.js.map +1 -1
- package/dist/cjs/auth/stateful-oauth-strategy.js +3 -9
- package/dist/cjs/auth/stateful-oauth-strategy.js.map +1 -1
- package/dist/cjs/auth/stateful-store.js +33 -35
- package/dist/cjs/auth/stateful-store.js.map +1 -1
- package/dist/cjs/auth/types.d.ts +2 -1
- package/dist/cjs/auth/types.js +1 -1
- package/dist/cjs/auth/types.js.map +1 -1
- package/dist/cjs/cli/am-command.d.ts +1 -1
- package/dist/cjs/cli/am-command.js +3 -0
- package/dist/cjs/cli/am-command.js.map +1 -1
- package/dist/cjs/cli/base-command.js +4 -2
- package/dist/cjs/cli/base-command.js.map +1 -1
- package/dist/cjs/cli/columns.d.ts +128 -0
- package/dist/cjs/cli/columns.js +128 -0
- package/dist/cjs/cli/columns.js.map +1 -0
- package/dist/cjs/cli/config.js +4 -0
- package/dist/cjs/cli/config.js.map +1 -1
- package/dist/cjs/cli/details.d.ts +69 -0
- package/dist/cjs/cli/details.js +72 -0
- package/dist/cjs/cli/details.js.map +1 -0
- package/dist/cjs/cli/index.d.ts +4 -0
- package/dist/cjs/cli/index.js +2 -0
- package/dist/cjs/cli/index.js.map +1 -1
- package/dist/cjs/cli/instance-command.d.ts +3 -0
- package/dist/cjs/cli/oauth-command.d.ts +14 -2
- package/dist/cjs/cli/oauth-command.js +54 -3
- package/dist/cjs/cli/oauth-command.js.map +1 -1
- package/dist/cjs/cli/ods-command.d.ts +3 -0
- package/dist/cjs/cli/webdav-command.d.ts +3 -0
- package/dist/cjs/clients/cdn-zones.js +5 -2
- package/dist/cjs/clients/cdn-zones.js.map +1 -1
- package/dist/cjs/clients/cip.js +2 -1
- package/dist/cjs/clients/cip.js.map +1 -1
- package/dist/cjs/clients/custom-apis.js +5 -2
- package/dist/cjs/clients/custom-apis.js.map +1 -1
- package/dist/cjs/clients/granular-replications.js +4 -1
- package/dist/cjs/clients/granular-replications.js.map +1 -1
- package/dist/cjs/clients/mrt.generated.d.ts +1073 -41
- package/dist/cjs/clients/scapi-schemas.js +5 -2
- package/dist/cjs/clients/scapi-schemas.js.map +1 -1
- package/dist/cjs/clients/webdav.js +11 -3
- package/dist/cjs/clients/webdav.js.map +1 -1
- package/dist/cjs/config/dw-json.d.ts +8 -0
- package/dist/cjs/config/dw-json.js +4 -7
- package/dist/cjs/config/dw-json.js.map +1 -1
- package/dist/cjs/config/mapping.js +22 -0
- package/dist/cjs/config/mapping.js.map +1 -1
- package/dist/cjs/config/sources/env-source.js +13 -1
- package/dist/cjs/config/sources/env-source.js.map +1 -1
- package/dist/cjs/config/sources/package-json-source.js +1 -0
- package/dist/cjs/config/sources/package-json-source.js.map +1 -1
- package/dist/cjs/config/types.d.ts +12 -0
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/operations/bm-users/index.d.ts +50 -0
- package/dist/cjs/operations/bm-users/index.js +55 -0
- package/dist/cjs/operations/bm-users/index.js.map +1 -0
- package/dist/cjs/operations/bm-users/users.d.ts +189 -0
- package/dist/cjs/operations/bm-users/users.js +229 -0
- package/dist/cjs/operations/bm-users/users.js.map +1 -0
- package/dist/cjs/operations/code/deploy.js +19 -10
- package/dist/cjs/operations/code/deploy.js.map +1 -1
- package/dist/cjs/operations/code/download.js +50 -32
- package/dist/cjs/operations/code/download.js.map +1 -1
- package/dist/cjs/operations/debug/debug-session.js +23 -8
- package/dist/cjs/operations/debug/debug-session.js.map +1 -1
- package/dist/cjs/operations/debug/index.d.ts +3 -0
- package/dist/cjs/operations/debug/index.js +2 -0
- package/dist/cjs/operations/debug/index.js.map +1 -1
- package/dist/cjs/operations/debug/projections.d.ts +72 -0
- package/dist/cjs/operations/debug/projections.js +84 -0
- package/dist/cjs/operations/debug/projections.js.map +1 -0
- package/dist/cjs/operations/debug/resolve-path.d.ts +15 -0
- package/dist/cjs/operations/debug/resolve-path.js +52 -0
- package/dist/cjs/operations/debug/resolve-path.js.map +1 -0
- package/dist/cjs/operations/mrt/certificate.d.ts +60 -0
- package/dist/cjs/operations/mrt/certificate.js +76 -0
- package/dist/cjs/operations/mrt/certificate.js.map +1 -0
- package/dist/cjs/operations/mrt/env.d.ts +79 -0
- package/dist/cjs/operations/mrt/env.js +65 -3
- package/dist/cjs/operations/mrt/env.js.map +1 -1
- package/dist/cjs/operations/mrt/index.d.ts +8 -4
- package/dist/cjs/operations/mrt/index.js +6 -2
- package/dist/cjs/operations/mrt/index.js.map +1 -1
- package/dist/cjs/operations/mrt/organization-member.d.ts +68 -0
- package/dist/cjs/operations/mrt/organization-member.js +88 -0
- package/dist/cjs/operations/mrt/organization-member.js.map +1 -0
- package/dist/cjs/operations/mrt/push.d.ts +67 -0
- package/dist/cjs/operations/mrt/push.js +63 -0
- package/dist/cjs/operations/mrt/push.js.map +1 -1
- package/dist/cjs/ux/index.d.ts +1 -0
- package/dist/cjs/ux/index.js +7 -0
- package/dist/cjs/ux/index.js.map +1 -0
- package/dist/esm/auth/index.d.ts +3 -0
- package/dist/esm/auth/index.js +2 -0
- package/dist/esm/auth/index.js.map +1 -1
- package/dist/esm/auth/jwt-utils.d.ts +25 -0
- package/dist/esm/auth/jwt-utils.js +66 -0
- package/dist/esm/auth/jwt-utils.js.map +1 -0
- package/dist/esm/auth/oauth-implicit.js +4 -1
- package/dist/esm/auth/oauth-implicit.js.map +1 -1
- package/dist/esm/auth/oauth-jwt.d.ts +99 -0
- package/dist/esm/auth/oauth-jwt.js +343 -0
- package/dist/esm/auth/oauth-jwt.js.map +1 -0
- package/dist/esm/auth/oauth.d.ts +42 -3
- package/dist/esm/auth/oauth.js +90 -35
- package/dist/esm/auth/oauth.js.map +1 -1
- package/dist/esm/auth/stateful-oauth-strategy.js +3 -9
- package/dist/esm/auth/stateful-oauth-strategy.js.map +1 -1
- package/dist/esm/auth/stateful-store.js +33 -35
- package/dist/esm/auth/stateful-store.js.map +1 -1
- package/dist/esm/auth/types.d.ts +2 -1
- package/dist/esm/auth/types.js +1 -1
- package/dist/esm/auth/types.js.map +1 -1
- package/dist/esm/cli/am-command.d.ts +1 -1
- package/dist/esm/cli/am-command.js +3 -0
- package/dist/esm/cli/am-command.js.map +1 -1
- package/dist/esm/cli/base-command.js +4 -2
- package/dist/esm/cli/base-command.js.map +1 -1
- package/dist/esm/cli/columns.d.ts +128 -0
- package/dist/esm/cli/columns.js +128 -0
- package/dist/esm/cli/columns.js.map +1 -0
- package/dist/esm/cli/config.js +4 -0
- package/dist/esm/cli/config.js.map +1 -1
- package/dist/esm/cli/details.d.ts +69 -0
- package/dist/esm/cli/details.js +72 -0
- package/dist/esm/cli/details.js.map +1 -0
- package/dist/esm/cli/index.d.ts +4 -0
- package/dist/esm/cli/index.js +2 -0
- package/dist/esm/cli/index.js.map +1 -1
- package/dist/esm/cli/instance-command.d.ts +3 -0
- package/dist/esm/cli/oauth-command.d.ts +14 -2
- package/dist/esm/cli/oauth-command.js +54 -3
- package/dist/esm/cli/oauth-command.js.map +1 -1
- package/dist/esm/cli/ods-command.d.ts +3 -0
- package/dist/esm/cli/webdav-command.d.ts +3 -0
- package/dist/esm/clients/cdn-zones.js +5 -2
- package/dist/esm/clients/cdn-zones.js.map +1 -1
- package/dist/esm/clients/cip.js +2 -1
- package/dist/esm/clients/cip.js.map +1 -1
- package/dist/esm/clients/custom-apis.js +5 -2
- package/dist/esm/clients/custom-apis.js.map +1 -1
- package/dist/esm/clients/granular-replications.js +4 -1
- package/dist/esm/clients/granular-replications.js.map +1 -1
- package/dist/esm/clients/mrt.generated.d.ts +1073 -41
- package/dist/esm/clients/scapi-schemas.js +5 -2
- package/dist/esm/clients/scapi-schemas.js.map +1 -1
- package/dist/esm/clients/webdav.js +11 -3
- package/dist/esm/clients/webdav.js.map +1 -1
- package/dist/esm/config/dw-json.d.ts +8 -0
- package/dist/esm/config/dw-json.js +4 -7
- package/dist/esm/config/dw-json.js.map +1 -1
- package/dist/esm/config/mapping.js +22 -0
- package/dist/esm/config/mapping.js.map +1 -1
- package/dist/esm/config/sources/env-source.js +13 -1
- package/dist/esm/config/sources/env-source.js.map +1 -1
- package/dist/esm/config/sources/package-json-source.js +1 -0
- package/dist/esm/config/sources/package-json-source.js.map +1 -1
- package/dist/esm/config/types.d.ts +12 -0
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/operations/bm-users/index.d.ts +50 -0
- package/dist/esm/operations/bm-users/index.js +55 -0
- package/dist/esm/operations/bm-users/index.js.map +1 -0
- package/dist/esm/operations/bm-users/users.d.ts +189 -0
- package/dist/esm/operations/bm-users/users.js +229 -0
- package/dist/esm/operations/bm-users/users.js.map +1 -0
- package/dist/esm/operations/code/deploy.js +19 -10
- package/dist/esm/operations/code/deploy.js.map +1 -1
- package/dist/esm/operations/code/download.js +50 -32
- package/dist/esm/operations/code/download.js.map +1 -1
- package/dist/esm/operations/debug/debug-session.js +23 -8
- package/dist/esm/operations/debug/debug-session.js.map +1 -1
- package/dist/esm/operations/debug/index.d.ts +3 -0
- package/dist/esm/operations/debug/index.js +2 -0
- package/dist/esm/operations/debug/index.js.map +1 -1
- package/dist/esm/operations/debug/projections.d.ts +72 -0
- package/dist/esm/operations/debug/projections.js +84 -0
- package/dist/esm/operations/debug/projections.js.map +1 -0
- package/dist/esm/operations/debug/resolve-path.d.ts +15 -0
- package/dist/esm/operations/debug/resolve-path.js +52 -0
- package/dist/esm/operations/debug/resolve-path.js.map +1 -0
- package/dist/esm/operations/mrt/certificate.d.ts +60 -0
- package/dist/esm/operations/mrt/certificate.js +76 -0
- package/dist/esm/operations/mrt/certificate.js.map +1 -0
- package/dist/esm/operations/mrt/env.d.ts +79 -0
- package/dist/esm/operations/mrt/env.js +65 -3
- package/dist/esm/operations/mrt/env.js.map +1 -1
- package/dist/esm/operations/mrt/index.d.ts +8 -4
- package/dist/esm/operations/mrt/index.js +6 -2
- package/dist/esm/operations/mrt/index.js.map +1 -1
- package/dist/esm/operations/mrt/organization-member.d.ts +68 -0
- package/dist/esm/operations/mrt/organization-member.js +88 -0
- package/dist/esm/operations/mrt/organization-member.js.map +1 -0
- package/dist/esm/operations/mrt/push.d.ts +67 -0
- package/dist/esm/operations/mrt/push.js +63 -0
- package/dist/esm/operations/mrt/push.js.map +1 -1
- package/dist/esm/ux/index.d.ts +1 -0
- package/dist/esm/ux/index.js +7 -0
- package/dist/esm/ux/index.js.map +1 -0
- package/package.json +22 -2
- package/specs/mrt-api-v1.json +2192 -48
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Business Manager user operations for B2C Commerce instances.
|
|
3
|
+
*
|
|
4
|
+
* Provides functions for querying and managing instance-level users via OCAPI Data API.
|
|
5
|
+
*
|
|
6
|
+
* Note: Most production B2C Commerce instances delegate user identity to Account Manager
|
|
7
|
+
* (SSO), so creating local Business Manager users via the Data API typically fails with
|
|
8
|
+
* `LocalUserCreationException`. These operations focus on read/search/lifecycle of
|
|
9
|
+
* AM-managed users plus access-key administration.
|
|
10
|
+
*/
|
|
11
|
+
import type { B2CInstance } from '../../instance/index.js';
|
|
12
|
+
import type { components } from '../../clients/ocapi.generated.js';
|
|
13
|
+
/**
|
|
14
|
+
* BM user from OCAPI.
|
|
15
|
+
*/
|
|
16
|
+
export type BmUser = components['schemas']['user'];
|
|
17
|
+
/**
|
|
18
|
+
* BM users collection from OCAPI.
|
|
19
|
+
*/
|
|
20
|
+
export type BmUsers = components['schemas']['users'];
|
|
21
|
+
/**
|
|
22
|
+
* BM user search result from OCAPI.
|
|
23
|
+
*/
|
|
24
|
+
export type BmUserSearchResult = components['schemas']['user_search_result'];
|
|
25
|
+
/**
|
|
26
|
+
* Access key details for an externally-managed user.
|
|
27
|
+
*/
|
|
28
|
+
export type BmAccessKeyDetails = components['schemas']['access_key_details'];
|
|
29
|
+
/**
|
|
30
|
+
* Valid access-key scopes accepted by the Data API
|
|
31
|
+
* `/users/{login}/access_key/{scope}` endpoints.
|
|
32
|
+
*/
|
|
33
|
+
export declare const ACCESS_KEY_SCOPES: readonly ["WEBDAV_AND_STUDIO", "AGENT_USER_AND_OCAPI", "STOREFRONT"];
|
|
34
|
+
/**
|
|
35
|
+
* Access-key scope. One of {@link ACCESS_KEY_SCOPES}.
|
|
36
|
+
*/
|
|
37
|
+
export type AccessKeyScope = (typeof ACCESS_KEY_SCOPES)[number];
|
|
38
|
+
/**
|
|
39
|
+
* Updatable user fields for `patch` operations.
|
|
40
|
+
*
|
|
41
|
+
* Note: `locked` and `password` cannot be modified via PATCH per the API spec.
|
|
42
|
+
*/
|
|
43
|
+
export interface UpdateBmUserChanges {
|
|
44
|
+
disabled?: boolean;
|
|
45
|
+
email?: string;
|
|
46
|
+
external_id?: string;
|
|
47
|
+
first_name?: string;
|
|
48
|
+
last_name?: string;
|
|
49
|
+
preferred_data_locale?: string;
|
|
50
|
+
preferred_ui_locale?: string;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Options for listing BM users.
|
|
54
|
+
*/
|
|
55
|
+
export interface ListBmUsersOptions {
|
|
56
|
+
/** Start index (default 0) */
|
|
57
|
+
start?: number;
|
|
58
|
+
/** Number of items to return (default 25) */
|
|
59
|
+
count?: number;
|
|
60
|
+
/** Property selector (default returns shallow user fields) */
|
|
61
|
+
select?: string;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Options for searching BM users.
|
|
65
|
+
*
|
|
66
|
+
* Searchable fields per the Data API spec: login, email, first_name, last_name,
|
|
67
|
+
* external_id, last_login_date, is_locked, is_disabled.
|
|
68
|
+
*/
|
|
69
|
+
export interface SearchBmUsersOptions {
|
|
70
|
+
/**
|
|
71
|
+
* Pre-built OCAPI query object (e.g. `{text_query: {fields: ['login'], search_phrase: 'foo'}}`).
|
|
72
|
+
* If omitted, one is built from the convenience flags below.
|
|
73
|
+
*/
|
|
74
|
+
query?: unknown;
|
|
75
|
+
/** Free-text phrase searched across login/email/first_name/last_name */
|
|
76
|
+
searchPhrase?: string;
|
|
77
|
+
/** Match users with a specific login */
|
|
78
|
+
login?: string;
|
|
79
|
+
/** Match users with a specific email */
|
|
80
|
+
email?: string;
|
|
81
|
+
/** Match locked users */
|
|
82
|
+
locked?: boolean;
|
|
83
|
+
/** Match disabled users */
|
|
84
|
+
disabled?: boolean;
|
|
85
|
+
/** Field to sort by (e.g. 'login', 'email', 'last_login_date') */
|
|
86
|
+
sortBy?: string;
|
|
87
|
+
/** Sort direction */
|
|
88
|
+
sortOrder?: 'asc' | 'desc';
|
|
89
|
+
/** Start index (default 0) */
|
|
90
|
+
start?: number;
|
|
91
|
+
/** Number of items to return (default 25) */
|
|
92
|
+
count?: number;
|
|
93
|
+
/** Property selector (default returns shallow user fields) */
|
|
94
|
+
select?: string;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Lists all users on a B2C Commerce instance.
|
|
98
|
+
*
|
|
99
|
+
* @param instance - B2C instance to query
|
|
100
|
+
* @param options - Pagination options
|
|
101
|
+
* @returns Users collection with pagination info
|
|
102
|
+
*/
|
|
103
|
+
export declare function listBmUsers(instance: B2CInstance, options?: ListBmUsersOptions): Promise<BmUsers>;
|
|
104
|
+
/**
|
|
105
|
+
* Gets a single user by login (email).
|
|
106
|
+
*
|
|
107
|
+
* @param instance - B2C instance
|
|
108
|
+
* @param login - User login
|
|
109
|
+
* @returns User details
|
|
110
|
+
*/
|
|
111
|
+
export declare function getBmUser(instance: B2CInstance, login: string): Promise<BmUser>;
|
|
112
|
+
/**
|
|
113
|
+
* Returns details for the currently authenticated user (the user the OAuth token resolves to).
|
|
114
|
+
*
|
|
115
|
+
* Useful for verifying which BM identity is in use on an instance.
|
|
116
|
+
*
|
|
117
|
+
* @param instance - B2C instance
|
|
118
|
+
* @returns Current user details (includes password expiration info)
|
|
119
|
+
*/
|
|
120
|
+
export declare function whoamiBmUser(instance: B2CInstance): Promise<BmUser>;
|
|
121
|
+
/**
|
|
122
|
+
* Updates an existing user. The `locked` flag and the user `password` cannot be updated
|
|
123
|
+
* with this resource.
|
|
124
|
+
*
|
|
125
|
+
* @param instance - B2C instance
|
|
126
|
+
* @param login - User login
|
|
127
|
+
* @param changes - Fields to update
|
|
128
|
+
* @returns Updated user
|
|
129
|
+
*/
|
|
130
|
+
export declare function updateBmUser(instance: B2CInstance, login: string, changes: UpdateBmUserChanges): Promise<BmUser>;
|
|
131
|
+
/**
|
|
132
|
+
* Deletes a user from an instance.
|
|
133
|
+
*
|
|
134
|
+
* @param instance - B2C instance
|
|
135
|
+
* @param login - User login
|
|
136
|
+
*/
|
|
137
|
+
export declare function deleteBmUser(instance: B2CInstance, login: string): Promise<void>;
|
|
138
|
+
/**
|
|
139
|
+
* Searches users on an instance.
|
|
140
|
+
*
|
|
141
|
+
* Supports either a fully-formed OCAPI query (`options.query`) or convenience flags
|
|
142
|
+
* (`searchPhrase`, `login`, `email`, `locked`, `disabled`) which are combined into a
|
|
143
|
+
* `bool_query`. If no criteria are provided a `match_all_query` is used.
|
|
144
|
+
*
|
|
145
|
+
* @param instance - B2C instance
|
|
146
|
+
* @param options - Search options
|
|
147
|
+
* @returns User search result
|
|
148
|
+
*/
|
|
149
|
+
export declare function searchBmUsers(instance: B2CInstance, options?: SearchBmUsersOptions): Promise<BmUserSearchResult>;
|
|
150
|
+
/**
|
|
151
|
+
* Gets a single access key for an externally-managed user.
|
|
152
|
+
*
|
|
153
|
+
* @param instance - B2C instance
|
|
154
|
+
* @param login - User login
|
|
155
|
+
* @param scope - Access key scope (one of {@link ACCESS_KEY_SCOPES})
|
|
156
|
+
* @returns Access key details
|
|
157
|
+
*/
|
|
158
|
+
export declare function getBmUserAccessKey(instance: B2CInstance, login: string, scope: string): Promise<BmAccessKeyDetails>;
|
|
159
|
+
/**
|
|
160
|
+
* Creates a single access key for an externally-managed user (replaces any existing key
|
|
161
|
+
* for the same scope).
|
|
162
|
+
*
|
|
163
|
+
* The returned object includes the newly-generated `access_key` value — this is the only
|
|
164
|
+
* time it is returned, so callers should record it.
|
|
165
|
+
*
|
|
166
|
+
* @param instance - B2C instance
|
|
167
|
+
* @param login - User login
|
|
168
|
+
* @param scope - Access key scope
|
|
169
|
+
* @returns Access key details (including the secret `access_key` value)
|
|
170
|
+
*/
|
|
171
|
+
export declare function createBmUserAccessKey(instance: B2CInstance, login: string, scope: string): Promise<BmAccessKeyDetails>;
|
|
172
|
+
/**
|
|
173
|
+
* Enables or disables an existing access key for an externally-managed user.
|
|
174
|
+
*
|
|
175
|
+
* @param instance - B2C instance
|
|
176
|
+
* @param login - User login
|
|
177
|
+
* @param scope - Access key scope
|
|
178
|
+
* @param enabled - Whether the access key should be enabled
|
|
179
|
+
* @returns Updated access key details
|
|
180
|
+
*/
|
|
181
|
+
export declare function setBmUserAccessKeyEnabled(instance: B2CInstance, login: string, scope: string, enabled: boolean): Promise<BmAccessKeyDetails>;
|
|
182
|
+
/**
|
|
183
|
+
* Deletes a single access key for an externally-managed user.
|
|
184
|
+
*
|
|
185
|
+
* @param instance - B2C instance
|
|
186
|
+
* @param login - User login
|
|
187
|
+
* @param scope - Access key scope
|
|
188
|
+
*/
|
|
189
|
+
export declare function deleteBmUserAccessKey(instance: B2CInstance, login: string, scope: string): Promise<void>;
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import { getApiErrorMessage } from '../../clients/error-utils.js';
|
|
2
|
+
/**
|
|
3
|
+
* Valid access-key scopes accepted by the Data API
|
|
4
|
+
* `/users/{login}/access_key/{scope}` endpoints.
|
|
5
|
+
*/
|
|
6
|
+
export const ACCESS_KEY_SCOPES = ['WEBDAV_AND_STUDIO', 'AGENT_USER_AND_OCAPI', 'STOREFRONT'];
|
|
7
|
+
/**
|
|
8
|
+
* Lists all users on a B2C Commerce instance.
|
|
9
|
+
*
|
|
10
|
+
* @param instance - B2C instance to query
|
|
11
|
+
* @param options - Pagination options
|
|
12
|
+
* @returns Users collection with pagination info
|
|
13
|
+
*/
|
|
14
|
+
export async function listBmUsers(instance, options = {}) {
|
|
15
|
+
const { start, count, select } = options;
|
|
16
|
+
const { data, error, response } = await instance.ocapi.GET('/users', {
|
|
17
|
+
params: { query: { start, count, select: select ?? '(**)' } },
|
|
18
|
+
});
|
|
19
|
+
if (error) {
|
|
20
|
+
throw new Error(`Failed to list users: ${getApiErrorMessage(error, response)}`, { cause: error });
|
|
21
|
+
}
|
|
22
|
+
return data;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Gets a single user by login (email).
|
|
26
|
+
*
|
|
27
|
+
* @param instance - B2C instance
|
|
28
|
+
* @param login - User login
|
|
29
|
+
* @returns User details
|
|
30
|
+
*/
|
|
31
|
+
export async function getBmUser(instance, login) {
|
|
32
|
+
const { data, error, response } = await instance.ocapi.GET('/users/{login}', {
|
|
33
|
+
params: { path: { login } },
|
|
34
|
+
});
|
|
35
|
+
if (error) {
|
|
36
|
+
throw new Error(`Failed to get user ${login}: ${getApiErrorMessage(error, response)}`, { cause: error });
|
|
37
|
+
}
|
|
38
|
+
return data;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Returns details for the currently authenticated user (the user the OAuth token resolves to).
|
|
42
|
+
*
|
|
43
|
+
* Useful for verifying which BM identity is in use on an instance.
|
|
44
|
+
*
|
|
45
|
+
* @param instance - B2C instance
|
|
46
|
+
* @returns Current user details (includes password expiration info)
|
|
47
|
+
*/
|
|
48
|
+
export async function whoamiBmUser(instance) {
|
|
49
|
+
const { data, error, response } = await instance.ocapi.GET('/users/this');
|
|
50
|
+
if (error) {
|
|
51
|
+
throw new Error(`Failed to get current user: ${getApiErrorMessage(error, response)}`, { cause: error });
|
|
52
|
+
}
|
|
53
|
+
return data;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Updates an existing user. The `locked` flag and the user `password` cannot be updated
|
|
57
|
+
* with this resource.
|
|
58
|
+
*
|
|
59
|
+
* @param instance - B2C instance
|
|
60
|
+
* @param login - User login
|
|
61
|
+
* @param changes - Fields to update
|
|
62
|
+
* @returns Updated user
|
|
63
|
+
*/
|
|
64
|
+
export async function updateBmUser(instance, login, changes) {
|
|
65
|
+
const { data, error, response } = await instance.ocapi.PATCH('/users/{login}', {
|
|
66
|
+
params: { path: { login } },
|
|
67
|
+
body: changes,
|
|
68
|
+
});
|
|
69
|
+
if (error) {
|
|
70
|
+
throw new Error(`Failed to update user ${login}: ${getApiErrorMessage(error, response)}`, { cause: error });
|
|
71
|
+
}
|
|
72
|
+
return data;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Deletes a user from an instance.
|
|
76
|
+
*
|
|
77
|
+
* @param instance - B2C instance
|
|
78
|
+
* @param login - User login
|
|
79
|
+
*/
|
|
80
|
+
export async function deleteBmUser(instance, login) {
|
|
81
|
+
const { error, response } = await instance.ocapi.DELETE('/users/{login}', {
|
|
82
|
+
params: { path: { login } },
|
|
83
|
+
});
|
|
84
|
+
if (error) {
|
|
85
|
+
throw new Error(`Failed to delete user ${login}: ${getApiErrorMessage(error, response)}`, { cause: error });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Searches users on an instance.
|
|
90
|
+
*
|
|
91
|
+
* Supports either a fully-formed OCAPI query (`options.query`) or convenience flags
|
|
92
|
+
* (`searchPhrase`, `login`, `email`, `locked`, `disabled`) which are combined into a
|
|
93
|
+
* `bool_query`. If no criteria are provided a `match_all_query` is used.
|
|
94
|
+
*
|
|
95
|
+
* @param instance - B2C instance
|
|
96
|
+
* @param options - Search options
|
|
97
|
+
* @returns User search result
|
|
98
|
+
*/
|
|
99
|
+
export async function searchBmUsers(instance, options = {}) {
|
|
100
|
+
const { query: providedQuery, searchPhrase, login, email, locked, disabled, sortBy, sortOrder, start, count, select, } = options;
|
|
101
|
+
let query = providedQuery;
|
|
102
|
+
if (!query) {
|
|
103
|
+
const queries = [];
|
|
104
|
+
if (searchPhrase) {
|
|
105
|
+
queries.push({
|
|
106
|
+
text_query: {
|
|
107
|
+
fields: ['login', 'email', 'first_name', 'last_name'],
|
|
108
|
+
search_phrase: searchPhrase,
|
|
109
|
+
},
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
if (login) {
|
|
113
|
+
queries.push({ term_query: { fields: ['login'], operator: 'is', values: [login] } });
|
|
114
|
+
}
|
|
115
|
+
if (email) {
|
|
116
|
+
queries.push({ term_query: { fields: ['email'], operator: 'is', values: [email] } });
|
|
117
|
+
}
|
|
118
|
+
if (locked !== undefined) {
|
|
119
|
+
queries.push({ term_query: { fields: ['is_locked'], operator: 'is', values: [locked] } });
|
|
120
|
+
}
|
|
121
|
+
if (disabled !== undefined) {
|
|
122
|
+
queries.push({ term_query: { fields: ['is_disabled'], operator: 'is', values: [disabled] } });
|
|
123
|
+
}
|
|
124
|
+
if (queries.length === 0) {
|
|
125
|
+
query = { match_all_query: {} };
|
|
126
|
+
}
|
|
127
|
+
else if (queries.length === 1) {
|
|
128
|
+
query = queries[0];
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
query = { bool_query: { must: queries } };
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
const sorts = sortBy ? [{ field: sortBy, sort_order: sortOrder ?? 'asc' }] : undefined;
|
|
135
|
+
const { data, error, response } = await instance.ocapi.POST('/user_search', {
|
|
136
|
+
body: {
|
|
137
|
+
query,
|
|
138
|
+
start,
|
|
139
|
+
count,
|
|
140
|
+
sorts,
|
|
141
|
+
select: select ?? '(**)',
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
if (error) {
|
|
145
|
+
throw new Error(`Failed to search users: ${getApiErrorMessage(error, response)}`, { cause: error });
|
|
146
|
+
}
|
|
147
|
+
return data;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Gets a single access key for an externally-managed user.
|
|
151
|
+
*
|
|
152
|
+
* @param instance - B2C instance
|
|
153
|
+
* @param login - User login
|
|
154
|
+
* @param scope - Access key scope (one of {@link ACCESS_KEY_SCOPES})
|
|
155
|
+
* @returns Access key details
|
|
156
|
+
*/
|
|
157
|
+
export async function getBmUserAccessKey(instance, login, scope) {
|
|
158
|
+
const { data, error, response } = await instance.ocapi.GET('/users/{login}/access_key/{scope}', {
|
|
159
|
+
params: { path: { login, scope } },
|
|
160
|
+
});
|
|
161
|
+
if (error) {
|
|
162
|
+
throw new Error(`Failed to get access key (${scope}) for ${login}: ${getApiErrorMessage(error, response)}`, {
|
|
163
|
+
cause: error,
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
return data;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Creates a single access key for an externally-managed user (replaces any existing key
|
|
170
|
+
* for the same scope).
|
|
171
|
+
*
|
|
172
|
+
* The returned object includes the newly-generated `access_key` value — this is the only
|
|
173
|
+
* time it is returned, so callers should record it.
|
|
174
|
+
*
|
|
175
|
+
* @param instance - B2C instance
|
|
176
|
+
* @param login - User login
|
|
177
|
+
* @param scope - Access key scope
|
|
178
|
+
* @returns Access key details (including the secret `access_key` value)
|
|
179
|
+
*/
|
|
180
|
+
export async function createBmUserAccessKey(instance, login, scope) {
|
|
181
|
+
const { data, error, response } = await instance.ocapi.PUT('/users/{login}/access_key/{scope}', {
|
|
182
|
+
params: { path: { login, scope } },
|
|
183
|
+
});
|
|
184
|
+
if (error) {
|
|
185
|
+
throw new Error(`Failed to create access key (${scope}) for ${login}: ${getApiErrorMessage(error, response)}`, {
|
|
186
|
+
cause: error,
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
return data;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Enables or disables an existing access key for an externally-managed user.
|
|
193
|
+
*
|
|
194
|
+
* @param instance - B2C instance
|
|
195
|
+
* @param login - User login
|
|
196
|
+
* @param scope - Access key scope
|
|
197
|
+
* @param enabled - Whether the access key should be enabled
|
|
198
|
+
* @returns Updated access key details
|
|
199
|
+
*/
|
|
200
|
+
export async function setBmUserAccessKeyEnabled(instance, login, scope, enabled) {
|
|
201
|
+
const { data, error, response } = await instance.ocapi.PATCH('/users/{login}/access_key/{scope}', {
|
|
202
|
+
params: { path: { login, scope } },
|
|
203
|
+
body: { enabled },
|
|
204
|
+
});
|
|
205
|
+
if (error) {
|
|
206
|
+
throw new Error(`Failed to update access key (${scope}) for ${login}: ${getApiErrorMessage(error, response)}`, {
|
|
207
|
+
cause: error,
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
return data;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Deletes a single access key for an externally-managed user.
|
|
214
|
+
*
|
|
215
|
+
* @param instance - B2C instance
|
|
216
|
+
* @param login - User login
|
|
217
|
+
* @param scope - Access key scope
|
|
218
|
+
*/
|
|
219
|
+
export async function deleteBmUserAccessKey(instance, login, scope) {
|
|
220
|
+
const { error, response } = await instance.ocapi.DELETE('/users/{login}/access_key/{scope}', {
|
|
221
|
+
params: { path: { login, scope } },
|
|
222
|
+
});
|
|
223
|
+
if (error) {
|
|
224
|
+
throw new Error(`Failed to delete access key (${scope}) for ${login}: ${getApiErrorMessage(error, response)}`, {
|
|
225
|
+
cause: error,
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=users.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../../../src/operations/bm-users/users.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,kBAAkB,EAAC,MAAM,8BAA8B,CAAC;AAsBhE;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,YAAY,CAAU,CAAC;AAoEtG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAqB,EAAE,UAA8B,EAAE;IACvF,MAAM,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,OAAO,CAAC;IAEvC,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE;QACjE,MAAM,EAAE,EAAC,KAAK,EAAE,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,EAAC,EAAC;KAC1D,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IAClG,CAAC;IAED,OAAO,IAAe,CAAC;AACzB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAqB,EAAE,KAAa;IAClE,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE;QACzE,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAC,EAAC;KACxB,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IACzG,CAAC;IAED,OAAO,IAAc,CAAC;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAqB;IACtD,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAExE,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,+BAA+B,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IACxG,CAAC;IAED,OAAO,IAAc,CAAC;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAqB,EACrB,KAAa,EACb,OAA4B;IAE5B,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,EAAE;QAC3E,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAC,EAAC;QACvB,IAAI,EAAE,OAAwC;KAC/C,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IAC5G,CAAC;IAED,OAAO,IAAc,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAqB,EAAE,KAAa;IACrE,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE;QACtE,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAC,EAAC;KACxB,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IAC5G,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAqB,EACrB,UAAgC,EAAE;IAElC,MAAM,EACJ,KAAK,EAAE,aAAa,EACpB,YAAY,EACZ,KAAK,EACL,KAAK,EACL,MAAM,EACN,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,KAAK,EACL,MAAM,GACP,GAAG,OAAO,CAAC;IAEZ,IAAI,KAAK,GAAY,aAAa,CAAC;IACnC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,OAAO,GAAc,EAAE,CAAC;QAE9B,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC;gBACX,UAAU,EAAE;oBACV,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC;oBACrD,aAAa,EAAE,YAAY;iBAC5B;aACF,CAAC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,EAAC,UAAU,EAAE,EAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAC,EAAC,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,EAAC,UAAU,EAAE,EAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAC,EAAC,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,EAAC,UAAU,EAAE,EAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAC,EAAC,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,EAAC,UAAU,EAAE,EAAC,MAAM,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAC,EAAC,CAAC,CAAC;QAC5F,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,GAAG,EAAC,eAAe,EAAE,EAAE,EAAC,CAAC;QAChC,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,EAAC,UAAU,EAAE,EAAC,IAAI,EAAE,OAAO,EAAC,EAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,IAAI,KAAK,EAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAErF,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE;QACxE,IAAI,EAAE;YACJ,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;YACL,MAAM,EAAE,MAAM,IAAI,MAAM;SAC6B;KACxD,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IACpG,CAAC;IAED,OAAO,IAA0B,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAqB,EACrB,KAAa,EACb,KAAa;IAEb,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,EAAE;QAC5F,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,EAAC;KAC/B,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,SAAS,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC1G,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAA0B,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAqB,EACrB,KAAa,EACb,KAAa;IAEb,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,EAAE;QAC5F,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,EAAC;KAC/B,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,SAAS,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC7G,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAA0B,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,QAAqB,EACrB,KAAa,EACb,KAAa,EACb,OAAgB;IAEhB,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,mCAAmC,EAAE;QAC9F,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,EAAC;QAC9B,IAAI,EAAE,EAAC,OAAO,EAAuD;KACtE,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,SAAS,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC7G,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAA0B,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAqB,EAAE,KAAa,EAAE,KAAa;IAC7F,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,mCAAmC,EAAE;QACzF,MAAM,EAAE,EAAC,IAAI,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,EAAC;KAC/B,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,SAAS,KAAK,KAAK,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC7G,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -131,20 +131,29 @@ export async function uploadCartridges(instance, cartridges, options) {
|
|
|
131
131
|
// Upload archive
|
|
132
132
|
let stopProgress = startProgress('uploading');
|
|
133
133
|
logger.debug({ uploadPath }, 'Uploading archive...');
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
try {
|
|
135
|
+
await webdav.put(uploadPath, buffer, 'application/zip');
|
|
136
|
+
}
|
|
137
|
+
finally {
|
|
138
|
+
stopProgress();
|
|
139
|
+
}
|
|
136
140
|
logger.debug('Archive uploaded');
|
|
137
141
|
// Unzip on server
|
|
138
142
|
stopProgress = startProgress('unzipping');
|
|
139
143
|
logger.debug('Unzipping archive on server...');
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
144
|
+
let response;
|
|
145
|
+
try {
|
|
146
|
+
response = await webdav.request(uploadPath, {
|
|
147
|
+
method: 'POST',
|
|
148
|
+
body: UNZIP_BODY,
|
|
149
|
+
headers: {
|
|
150
|
+
'Content-Type': 'application/x-www-form-urlencoded',
|
|
151
|
+
},
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
finally {
|
|
155
|
+
stopProgress();
|
|
156
|
+
}
|
|
148
157
|
if (!response.ok) {
|
|
149
158
|
const text = await response.text();
|
|
150
159
|
throw new Error(`Failed to unzip archive: ${response.status} ${response.statusText} - ${text}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../../src/operations/code/deploy.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../../src/operations/code/deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,28 +126,37 @@ export async function downloadSingleCartridge(instance, codeVersion, cartridgeNa
|
|
|
126
126
|
const zipPath = `${cartridgePath}.zip`;
|
|
127
127
|
let stopProgress = startProgress('zipping', onProgress);
|
|
128
128
|
logger.debug({ cartridgeName, codeVersion }, 'Requesting server-side zip for single cartridge...');
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
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
|
+
}
|
|
136
141
|
if (!zipResponse.ok) {
|
|
137
142
|
const text = await zipResponse.text();
|
|
138
143
|
throw new Error(`Failed to create server-side zip: ${zipResponse.status} ${zipResponse.statusText} - ${text}`);
|
|
139
144
|
}
|
|
140
145
|
stopProgress = startProgress('downloading', onProgress);
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
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 {
|
|
146
158
|
stopProgress();
|
|
147
|
-
throw new Error(`Failed to download zip: ${dlResponse.status} ${dlResponse.statusText}`);
|
|
148
159
|
}
|
|
149
|
-
const buffer = await dlResponse.arrayBuffer();
|
|
150
|
-
stopProgress();
|
|
151
160
|
logger.debug({ size: buffer.byteLength }, `Archive downloaded: ${buffer.byteLength} bytes`);
|
|
152
161
|
// Cleanup server-side zip (best effort)
|
|
153
162
|
onProgress?.({ phase: 'cleanup', elapsedSeconds: 0 });
|
|
@@ -224,15 +233,20 @@ export async function downloadCartridges(instance, outputDirectory, options = {}
|
|
|
224
233
|
const zipPath = `Cartridges/${codeVersion}.zip`;
|
|
225
234
|
let stopProgress = startProgress('zipping', onProgress);
|
|
226
235
|
logger.debug({ codeVersion }, 'Requesting server-side zip...');
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
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
|
+
}
|
|
236
250
|
if (!zipResponse.ok) {
|
|
237
251
|
const text = await zipResponse.text();
|
|
238
252
|
throw new Error(`Failed to create server-side zip: ${zipResponse.status} ${zipResponse.statusText} - ${text}`);
|
|
@@ -240,16 +254,20 @@ export async function downloadCartridges(instance, outputDirectory, options = {}
|
|
|
240
254
|
logger.debug('Server-side zip created');
|
|
241
255
|
stopProgress = startProgress('downloading', onProgress);
|
|
242
256
|
logger.debug({ zipPath }, 'Downloading zip archive...');
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
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 {
|
|
248
269
|
stopProgress();
|
|
249
|
-
throw new Error(`Failed to download zip: ${downloadResponse.status} ${downloadResponse.statusText}`);
|
|
250
270
|
}
|
|
251
|
-
const buffer = await downloadResponse.arrayBuffer();
|
|
252
|
-
stopProgress();
|
|
253
271
|
logger.debug({ size: buffer.byteLength }, `Archive downloaded: ${buffer.byteLength} bytes`);
|
|
254
272
|
// Cleanup server-side zip (best-effort)
|
|
255
273
|
onProgress?.({ phase: 'cleanup', elapsedSeconds: 0 });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download.js","sourceRoot":"","sources":["../../../../src/operations/code/download.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"download.js","sourceRoot":"","sources":["../../../../src/operations/code/download.ts"],"names":[],"mappings":"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"}
|