Skip to content

Commit 55bb6fb

Browse files
committed
enhancing error codes
1 parent d9a2b84 commit 55bb6fb

File tree

2 files changed

+19
-11
lines changed

2 files changed

+19
-11
lines changed

src/commands/content-type/compare-remote.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,15 +37,15 @@ export default class CompareRemoteCommand extends Command {
3737
const {flags} = this.parse(CompareRemoteCommand)
3838
this.setup({'token-alias': undefined, stack: flags['origin-stack']})
3939

40-
cli.action.start(Command.RequestDataMessage)
41-
4240
const originStackApi = flags['origin-stack'] as string
4341
const remoteStackApi = flags['remote-stack'] as string
4442

4543
if (originStackApi === remoteStackApi) {
4644
this.warn('Comparing the same Stack does not produce useful results.')
4745
}
4846

47+
cli.action.start(Command.RequestDataMessage)
48+
4949
const [originStackResp, remoteStackResp, originContentTypeResp, remoteContentTypeResp] = await Promise.all([
5050
this.client.getStack(originStackApi),
5151
this.client.getStack(remoteStackApi),

src/core/contentstack/client.ts

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ export default class ContentstackClient {
3939
uid: stack.uid,
4040
} as Stack
4141
} catch (error) {
42-
throw this.buildError(error)
42+
throw this.buildError(error, {api_key})
4343
}
4444
}
4545

@@ -54,7 +54,7 @@ export default class ContentstackClient {
5454

5555
return response.data.stack.collaborators
5656
} catch (error) {
57-
throw this.buildError(error)
57+
throw this.buildError(error, {api_key})
5858
}
5959
}
6060

@@ -70,7 +70,7 @@ export default class ContentstackClient {
7070

7171
return response.data
7272
} catch (error) {
73-
throw this.buildError(error)
73+
throw this.buildError(error, {api_key})
7474
}
7575
}
7676

@@ -87,7 +87,7 @@ export default class ContentstackClient {
8787

8888
return response.data
8989
} catch (error) {
90-
throw this.buildError(error)
90+
throw this.buildError(error, {api_key})
9191
}
9292
}
9393

@@ -105,7 +105,7 @@ export default class ContentstackClient {
105105

106106
return response.data
107107
} catch (error) {
108-
throw this.buildError(error)
108+
throw this.buildError(error, {api_key})
109109
}
110110
}
111111

@@ -121,13 +121,21 @@ export default class ContentstackClient {
121121

122122
return response.data
123123
} catch (error) {
124-
throw this.buildError(error)
124+
throw this.buildError(error, {api_key})
125125
}
126126
}
127127

128-
private buildError(error: any) {
128+
private buildError(error: any, context: any = {}) {
129129
const data = error?.response?.data
130-
if (!data) return new Error('Unrecognized error. Please try again.')
131-
return new ContentstackError(data.error_message, data.error_code)
130+
if (!data || !data.errors) return new Error('Unrecognized error. Please try again.')
131+
132+
let message = data.error_message
133+
const code = data.error_code
134+
135+
if (data.errors.api_key && context.api_key) {
136+
message += ` This is in regards to the Stack API Key '${context.api_key}'.`
137+
}
138+
139+
return new ContentstackError(message, code)
132140
}
133141
}

0 commit comments

Comments
 (0)