@salesforce/b2c-cli 0.5.6 → 0.7.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.
@@ -0,0 +1,24 @@
1
+ import { OdsCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ import { type OdsComponents } from '@salesforce/b2c-tooling-sdk';
3
+ type SandboxModel = OdsComponents['schemas']['SandboxModel'];
4
+ /**
5
+ * Command to update an on-demand sandbox.
6
+ */
7
+ export default class SandboxUpdate extends OdsCommand<typeof SandboxUpdate> {
8
+ static aliases: string[];
9
+ static args: {
10
+ sandboxId: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
11
+ };
12
+ static description: string;
13
+ static enableJsonFlag: boolean;
14
+ static examples: string[];
15
+ static flags: {
16
+ ttl: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
+ 'auto-scheduled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ tags: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
19
+ emails: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
20
+ };
21
+ run(): Promise<SandboxModel>;
22
+ private printSandboxSummary;
23
+ }
24
+ export {};
@@ -0,0 +1,111 @@
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 { Args, Flags, ux } from '@oclif/core';
7
+ import cliui from 'cliui';
8
+ import { OdsCommand } from '@salesforce/b2c-tooling-sdk/cli';
9
+ import { getApiErrorMessage } from '@salesforce/b2c-tooling-sdk';
10
+ import { t, withDocs } from '../../i18n/index.js';
11
+ /**
12
+ * Command to update an on-demand sandbox.
13
+ */
14
+ export default class SandboxUpdate extends OdsCommand {
15
+ static aliases = ['ods:update'];
16
+ static args = {
17
+ sandboxId: Args.string({
18
+ description: 'Sandbox ID (UUID or realm-instance, e.g., abcd-123)',
19
+ required: true,
20
+ }),
21
+ };
22
+ static description = withDocs(t('commands.sandbox.update.description', 'Update a sandbox (extend TTL, change scheduling, update tags or emails)'), '/cli/sandbox.html#b2c-sandbox-update');
23
+ static enableJsonFlag = true;
24
+ static examples = [
25
+ '<%= config.bin %> <%= command.id %> zzzv-123 --ttl 48',
26
+ '<%= config.bin %> <%= command.id %> zzzv-123 --ttl 0',
27
+ '<%= config.bin %> <%= command.id %> zzzv-123 --auto-scheduled',
28
+ '<%= config.bin %> <%= command.id %> zzzv-123 --no-auto-scheduled',
29
+ '<%= config.bin %> <%= command.id %> zzzv-123 --tags tag1,tag2',
30
+ '<%= config.bin %> <%= command.id %> zzzv-123 --emails user@example.com,dev@example.com',
31
+ '<%= config.bin %> <%= command.id %> zzzv-123 --ttl 48 --tags ci,nightly --json',
32
+ ];
33
+ static flags = {
34
+ ttl: Flags.integer({
35
+ description: 'Number of hours to add to sandbox lifetime (0 or less for infinite)',
36
+ }),
37
+ 'auto-scheduled': Flags.boolean({
38
+ description: 'Enable or disable automatic start/stop scheduling',
39
+ allowNo: true,
40
+ }),
41
+ tags: Flags.string({
42
+ description: 'Comma-separated list of tags',
43
+ }),
44
+ emails: Flags.string({
45
+ description: 'Comma-separated list of notification email addresses',
46
+ }),
47
+ };
48
+ async run() {
49
+ const sandboxId = await this.resolveSandboxId(this.args.sandboxId);
50
+ const { ttl, 'auto-scheduled': autoScheduled, tags, emails } = this.flags;
51
+ // Require at least one update flag
52
+ if (ttl === undefined && autoScheduled === undefined && tags === undefined && emails === undefined) {
53
+ this.error('At least one update flag is required. Use --ttl, --auto-scheduled, --tags, or --emails.');
54
+ }
55
+ const body = {};
56
+ if (ttl !== undefined) {
57
+ body.ttl = ttl;
58
+ }
59
+ if (autoScheduled !== undefined) {
60
+ body.autoScheduled = autoScheduled;
61
+ }
62
+ if (tags !== undefined) {
63
+ body.tags = tags.split(',').map((tag) => tag.trim());
64
+ }
65
+ if (emails !== undefined) {
66
+ body.emails = emails.split(',').map((email) => email.trim());
67
+ }
68
+ this.log(t('commands.sandbox.update.updating', 'Updating sandbox {{sandboxId}}...', { sandboxId }));
69
+ const result = await this.odsClient.PATCH('/sandboxes/{sandboxId}', {
70
+ params: {
71
+ path: { sandboxId },
72
+ },
73
+ body,
74
+ });
75
+ if (!result.data?.data) {
76
+ const message = getApiErrorMessage(result.error, result.response);
77
+ this.error(`Failed to update sandbox: ${message}`);
78
+ }
79
+ const sandbox = result.data.data;
80
+ this.log(t('commands.sandbox.update.success', 'Sandbox updated successfully'));
81
+ if (this.jsonEnabled()) {
82
+ return sandbox;
83
+ }
84
+ this.printSandboxSummary(sandbox);
85
+ return sandbox;
86
+ }
87
+ printSandboxSummary(sandbox) {
88
+ const ui = cliui({ width: process.stdout.columns || 80 });
89
+ const fields = [
90
+ ['ID', sandbox.id],
91
+ ['Realm', sandbox.realm],
92
+ ['Instance', sandbox.instance],
93
+ ['State', sandbox.state],
94
+ ['Auto Scheduled', sandbox.autoScheduled?.toString()],
95
+ ['EOL', sandbox.eol ? new Date(sandbox.eol).toLocaleString() : undefined],
96
+ ];
97
+ if (sandbox.tags && sandbox.tags.length > 0) {
98
+ fields.push(['Tags', sandbox.tags.join(', ')]);
99
+ }
100
+ if (sandbox.emails && sandbox.emails.length > 0) {
101
+ fields.push(['Emails', sandbox.emails.join(', ')]);
102
+ }
103
+ for (const [label, value] of fields) {
104
+ if (value !== undefined) {
105
+ ui.div({ text: `${label}:`, width: 20, padding: [0, 2, 0, 0] }, { text: value, padding: [0, 0, 0, 0] });
106
+ }
107
+ }
108
+ ux.stdout(ui.toString());
109
+ }
110
+ }
111
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/sandbox/update.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { withDocs } from '../../i18n/index.js';
10
10
  /**
11
11
  * Sensitive fields that should be masked by default.
12
12
  */
13
- const SENSITIVE_FIELDS = new Set(['clientSecret', 'mrtApiKey', 'password']);
13
+ const SENSITIVE_FIELDS = new Set(['clientSecret', 'mrtApiKey', 'password', 'slasClientSecret']);
14
14
  /**
15
15
  * Mask a sensitive value, showing first 4 characters.
16
16
  * Matches the pattern used in the logger for consistency.
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/commands/setup/inspect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/commands/setup/inspect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import type { ResolvedB2CConfig } from '@salesforce/b2c-tooling-sdk/config';
2
+ import { SlasClientCommand } from '../../utils/slas/client.js';
3
+ /**
4
+ * JSON output structure for slas token command.
5
+ */
6
+ interface SlasTokenJsonOutput {
7
+ response: {
8
+ accessToken: string;
9
+ refreshToken: string;
10
+ expiresIn: number;
11
+ tokenType: string;
12
+ usid: string;
13
+ customerId: string;
14
+ };
15
+ decodedJWT?: Record<string, unknown>;
16
+ clientId: string;
17
+ siteId: string;
18
+ isGuest: boolean;
19
+ }
20
+ export default class SlasToken extends SlasClientCommand<typeof SlasToken> {
21
+ static description: string;
22
+ static enableJsonFlag: boolean;
23
+ static examples: string[];
24
+ static flags: {
25
+ 'slas-client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ 'slas-client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'site-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'redirect-uri': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ 'shopper-login': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'shopper-password': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ 'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
37
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
38
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
39
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
40
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
41
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
42
+ jsonl: import("@oclif/core/interfaces").BooleanFlag<boolean>;
43
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
44
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
45
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
46
+ 'project-directory': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
47
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
48
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
49
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
50
+ };
51
+ protected loadConfiguration(): ResolvedB2CConfig;
52
+ run(): Promise<SlasTokenJsonOutput>;
53
+ /**
54
+ * Auto-discover a public SLAS client for the given tenant.
55
+ */
56
+ private autoDiscoverClient;
57
+ private decodeAndLogToken;
58
+ /**
59
+ * Get shopper password from flag or interactive prompt.
60
+ */
61
+ private getShopperPassword;
62
+ }
63
+ export {};
@@ -0,0 +1,222 @@
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 { Flags, ux } from '@oclif/core';
7
+ import { password as passwordPrompt } from '@inquirer/prompts';
8
+ import { loadConfig, extractOAuthFlags } from '@salesforce/b2c-tooling-sdk/cli';
9
+ import { toOrganizationId, decodeJWT } from '@salesforce/b2c-tooling-sdk';
10
+ import { getGuestToken, getRegisteredToken } from '@salesforce/b2c-tooling-sdk/slas';
11
+ import { SlasClientCommand, normalizeClientResponse, parseRedirectUris } from '../../utils/slas/client.js';
12
+ import { t, withDocs } from '../../i18n/index.js';
13
+ const DEFAULT_REDIRECT_URI = 'http://localhost:3000/callback';
14
+ export default class SlasToken extends SlasClientCommand {
15
+ static description = withDocs(t('commands.slas.token.description', 'Get a SLAS shopper access token'), '/cli/slas.html#b2c-slas-token');
16
+ static enableJsonFlag = true;
17
+ static examples = [
18
+ '<%= config.bin %> <%= command.id %> --tenant-id abcd_123 --site-id RefArch',
19
+ '<%= config.bin %> <%= command.id %> --slas-client-id my-client --tenant-id abcd_123 --short-code kv7kzm78 --site-id RefArch',
20
+ '<%= config.bin %> <%= command.id %> --slas-client-id my-client --slas-client-secret sk_xxx --tenant-id abcd_123 --short-code kv7kzm78 --site-id RefArch',
21
+ '<%= config.bin %> <%= command.id %> --tenant-id abcd_123 --site-id RefArch --shopper-login user@example.com --shopper-password secret',
22
+ '<%= config.bin %> <%= command.id %> --tenant-id abcd_123 --site-id RefArch --json',
23
+ ];
24
+ static flags = {
25
+ ...SlasClientCommand.baseFlags,
26
+ 'slas-client-id': Flags.string({
27
+ description: 'SLAS client ID (auto-discovered if omitted)',
28
+ env: 'SFCC_SLAS_CLIENT_ID',
29
+ }),
30
+ 'slas-client-secret': Flags.string({
31
+ description: 'SLAS client secret (omit for public clients)',
32
+ env: 'SFCC_SLAS_CLIENT_SECRET',
33
+ }),
34
+ 'site-id': Flags.string({
35
+ description: 'Site/channel ID',
36
+ env: 'SFCC_SITE_ID',
37
+ }),
38
+ 'redirect-uri': Flags.string({
39
+ description: `Redirect URI (default: ${DEFAULT_REDIRECT_URI})`,
40
+ }),
41
+ 'shopper-login': Flags.string({
42
+ description: 'Registered customer login (triggers registered flow)',
43
+ }),
44
+ 'shopper-password': Flags.string({
45
+ description: 'Registered customer password (prompted if not provided)',
46
+ }),
47
+ };
48
+ loadConfiguration() {
49
+ const flags = this.flags;
50
+ return loadConfig({
51
+ ...extractOAuthFlags(flags),
52
+ slasClientId: flags['slas-client-id'],
53
+ slasClientSecret: flags['slas-client-secret'],
54
+ siteId: flags['site-id'],
55
+ }, this.getBaseConfigOptions());
56
+ }
57
+ async run() {
58
+ const config = this.resolvedConfig.values;
59
+ const tenantId = this.requireTenantId();
60
+ let slasClientId = config.slasClientId;
61
+ const slasClientSecret = config.slasClientSecret;
62
+ let siteId = config.siteId;
63
+ let redirectUri = this.flags['redirect-uri'];
64
+ // Auto-discover SLAS client if not provided
65
+ if (!slasClientId) {
66
+ slasClientId = await this.autoDiscoverClient(tenantId, {
67
+ siteId,
68
+ redirectUri,
69
+ onDiscovered(discovered) {
70
+ if (!siteId && discovered.siteId)
71
+ siteId = discovered.siteId;
72
+ if (!redirectUri && discovered.redirectUri)
73
+ redirectUri = discovered.redirectUri;
74
+ },
75
+ });
76
+ }
77
+ // Validate required fields
78
+ if (!siteId) {
79
+ this.error(t('commands.slas.token.siteIdRequired', 'site-id is required. Provide via --site-id flag, SFCC_SITE_ID env var, or site-id in dw.json.'));
80
+ }
81
+ const { shortCode } = config;
82
+ if (!shortCode) {
83
+ this.error(t('error.shortCodeRequired', 'SCAPI short code required. Provide --short-code, set SFCC_SHORTCODE, or configure short-code in dw.json.'));
84
+ }
85
+ redirectUri = redirectUri ?? DEFAULT_REDIRECT_URI;
86
+ const tokenConfig = {
87
+ shortCode,
88
+ organizationId: toOrganizationId(tenantId),
89
+ slasClientId,
90
+ slasClientSecret,
91
+ siteId,
92
+ redirectUri,
93
+ };
94
+ const shopperLogin = this.flags['shopper-login'];
95
+ const isRegistered = Boolean(shopperLogin);
96
+ if (isRegistered) {
97
+ const shopperPassword = await this.getShopperPassword();
98
+ if (!this.jsonEnabled()) {
99
+ this.log(t('commands.slas.token.fetchingRegistered', 'Fetching registered customer token...'));
100
+ }
101
+ const tokenResponse = await getRegisteredToken({
102
+ ...tokenConfig,
103
+ shopperLogin: shopperLogin,
104
+ shopperPassword,
105
+ });
106
+ const decodedJWT = this.decodeAndLogToken(tokenResponse.access_token);
107
+ const output = {
108
+ response: {
109
+ accessToken: tokenResponse.access_token,
110
+ refreshToken: tokenResponse.refresh_token,
111
+ expiresIn: tokenResponse.expires_in,
112
+ tokenType: tokenResponse.token_type,
113
+ usid: tokenResponse.usid,
114
+ customerId: tokenResponse.customer_id,
115
+ },
116
+ ...(decodedJWT && { decodedJWT }),
117
+ clientId: slasClientId,
118
+ siteId,
119
+ isGuest: false,
120
+ };
121
+ if (this.jsonEnabled())
122
+ return output;
123
+ ux.stdout(tokenResponse.access_token);
124
+ return output;
125
+ }
126
+ // Guest flow
127
+ if (!this.jsonEnabled()) {
128
+ this.log(t('commands.slas.token.fetchingGuest', 'Fetching guest shopper token...'));
129
+ }
130
+ const tokenResponse = await getGuestToken(tokenConfig);
131
+ const decodedJWT = this.decodeAndLogToken(tokenResponse.access_token);
132
+ const output = {
133
+ response: {
134
+ accessToken: tokenResponse.access_token,
135
+ refreshToken: tokenResponse.refresh_token,
136
+ expiresIn: tokenResponse.expires_in,
137
+ tokenType: tokenResponse.token_type,
138
+ usid: tokenResponse.usid,
139
+ customerId: tokenResponse.customer_id,
140
+ },
141
+ ...(decodedJWT && { decodedJWT }),
142
+ clientId: slasClientId,
143
+ siteId,
144
+ isGuest: true,
145
+ };
146
+ if (this.jsonEnabled())
147
+ return output;
148
+ ux.stdout(tokenResponse.access_token);
149
+ return output;
150
+ }
151
+ /**
152
+ * Auto-discover a public SLAS client for the given tenant.
153
+ */
154
+ async autoDiscoverClient(tenantId, options) {
155
+ // Admin API access is needed for auto-discovery
156
+ this.requireOAuthCredentials();
157
+ if (!this.jsonEnabled()) {
158
+ this.log(t('commands.slas.token.discovering', 'Auto-discovering SLAS client for tenant {{tenantId}}...', { tenantId }));
159
+ }
160
+ const slasClient = this.getSlasClient();
161
+ const { data, error, response } = await slasClient.GET('/tenants/{tenantId}/clients', {
162
+ params: { path: { tenantId } },
163
+ });
164
+ if (error) {
165
+ this.error(t('commands.slas.token.discoveryError', 'Failed to list SLAS clients for auto-discovery: {{message}}', {
166
+ message: `HTTP ${response.status}`,
167
+ }));
168
+ }
169
+ const clients = (data?.data ?? []).map((c) => normalizeClientResponse(c));
170
+ // Find first public client
171
+ const publicClient = clients.find((c) => !c.isPrivateClient);
172
+ if (!publicClient) {
173
+ this.error(t('commands.slas.token.noPublicClient', 'No public SLAS client found for tenant {{tenantId}}. Create one with `b2c slas client create --public` or provide --slas-client-id.', { tenantId }));
174
+ }
175
+ this.logger.debug({ clientId: publicClient.clientId, name: publicClient.name }, 'Auto-discovered public SLAS client');
176
+ if (!this.jsonEnabled()) {
177
+ this.log(t('commands.slas.token.discovered', 'Using SLAS client: {{clientId}} ({{name}})', {
178
+ clientId: publicClient.clientId,
179
+ name: publicClient.name,
180
+ }));
181
+ }
182
+ // Populate siteId and redirectUri from client config if not already set
183
+ const discovered = {};
184
+ if (!options.siteId && publicClient.channels.length > 0) {
185
+ discovered.siteId = publicClient.channels[0];
186
+ }
187
+ if (!options.redirectUri && publicClient.redirectUri) {
188
+ const uris = parseRedirectUris(publicClient.redirectUri);
189
+ if (uris.length > 0) {
190
+ discovered.redirectUri = uris[0];
191
+ }
192
+ }
193
+ options.onDiscovered(discovered);
194
+ return publicClient.clientId;
195
+ }
196
+ decodeAndLogToken(accessToken) {
197
+ try {
198
+ const jwt = decodeJWT(accessToken);
199
+ this.logger.debug({ jwt: jwt.payload }, '[SLAS] JWT payload');
200
+ return jwt.payload;
201
+ }
202
+ catch {
203
+ this.logger.debug('[SLAS] Error decoding JWT (token may not be a JWT)');
204
+ return undefined;
205
+ }
206
+ }
207
+ /**
208
+ * Get shopper password from flag or interactive prompt.
209
+ */
210
+ async getShopperPassword() {
211
+ const flagPassword = this.flags['shopper-password'];
212
+ if (flagPassword)
213
+ return flagPassword;
214
+ if (!process.stdin.isTTY) {
215
+ this.error(t('commands.slas.token.passwordRequired', 'Shopper password is required. Provide --shopper-password when stdin is not a TTY.'));
216
+ }
217
+ return passwordPrompt({
218
+ message: 'Enter shopper password:',
219
+ });
220
+ }
221
+ }
222
+ //# sourceMappingURL=token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/commands/slas/token.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,13 @@ export declare function normalizeClientResponse(client: Client): ClientOutput;
25
25
  * Print client details in a formatted table.
26
26
  */
27
27
  export declare function printClientDetails(output: ClientOutput, showSecret?: boolean): void;
28
+ /**
29
+ * Parse a redirectUri string into individual URIs.
30
+ * The SLAS API returns redirect URIs as a pipe-delimited string (e.g. "http://a|http://b"),
31
+ * while normalizeClientResponse may produce comma-separated values from an array response.
32
+ * This helper handles both formats.
33
+ */
34
+ export declare function parseRedirectUris(redirectUri: string): string[];
28
35
  /**
29
36
  * Format API error for display.
30
37
  */
@@ -58,6 +58,24 @@ export function printClientDetails(output, showSecret = true) {
58
58
  }
59
59
  ux.stdout(ui.toString());
60
60
  }
61
+ /**
62
+ * Parse a redirectUri string into individual URIs.
63
+ * The SLAS API returns redirect URIs as a pipe-delimited string (e.g. "http://a|http://b"),
64
+ * while normalizeClientResponse may produce comma-separated values from an array response.
65
+ * This helper handles both formats.
66
+ */
67
+ export function parseRedirectUris(redirectUri) {
68
+ if (redirectUri.includes('|')) {
69
+ return redirectUri
70
+ .split('|')
71
+ .map((s) => s.trim())
72
+ .filter(Boolean);
73
+ }
74
+ return redirectUri
75
+ .split(',')
76
+ .map((s) => s.trim())
77
+ .filter(Boolean);
78
+ }
61
79
  /**
62
80
  * Format API error for display.
63
81
  */
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/utils/slas/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/utils/slas/client.ts"],"names":[],"mappings":"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"}