Skip to content

Commit 34dbf55

Browse files
Axon-341: I can not assign people to Jira dc (#588)
* AXON-341: fix dc api path * AXON-341: fix e2e tests * AXON-341: fix after review * Revert "AXON-341: fix after review" This reverts commit be5d93c. * AXON-341: fix after review * AXON-341: fix after review * AXON-341: fix after review * AXON-341: fix after review, update changelog
1 parent 87d3a8b commit 34dbf55

File tree

6 files changed

+126
-13
lines changed

6 files changed

+126
-13
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@
1111
### Bug Fixes
1212

1313
- Removed setting options that had no practical or business logic use.
14-
1514
- Fixed a bug where Jira site icon is broken in create Jira issue page
1615
- Fixed a bug with getting the error when deleting multiple instances
16+
- Fixed a bug where we could not assign people to a Jira issue as DC users
1717

1818
## What's new in 3.8.8
1919

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"request": {
3+
"method": "GET",
4+
"urlPath": "/rest/api/2/user/search",
5+
"queryParameters": {
6+
"username": {
7+
"matches": ".*"
8+
}
9+
}
10+
},
11+
"response": {
12+
"status": 200,
13+
"jsonBody": [
14+
{
15+
"accountId": "712020:13354d79-beaa-49d6-a55f-b9510892e3f4",
16+
"emailAddress": "[email protected]",
17+
"displayName": "Mocked McMock",
18+
"active": true,
19+
"avatarUrls": {
20+
"48x48": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png",
21+
"24x24": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png",
22+
"16x16": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png",
23+
"32x32": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png"
24+
},
25+
"timeZone": "America/Los_Angeles",
26+
"accountType": "atlassian"
27+
},
28+
{
29+
"accountId": "712020:another-user",
30+
"emailAddress": "[email protected]",
31+
"displayName": "Another User",
32+
"active": true,
33+
"avatarUrls": {
34+
"48x48": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png",
35+
"24x24": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png",
36+
"16x16": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png",
37+
"32x32": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png"
38+
},
39+
"timeZone": "America/Los_Angeles",
40+
"accountType": "atlassian"
41+
}
42+
],
43+
"headers": {
44+
"Content-Type": "application/json"
45+
}
46+
}
47+
}
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"request": {
3+
"method": "GET",
4+
"urlPath": "/rest/api/2/user/search",
5+
"queryParameters": {
6+
"query": {
7+
"matches": ".*"
8+
}
9+
}
10+
},
11+
"response": {
12+
"status": 200,
13+
"jsonBody": [
14+
{
15+
"accountId": "712020:13354d79-beaa-49d6-a55f-b9510892e3f4",
16+
"emailAddress": "[email protected]",
17+
"displayName": "Mocked McMock",
18+
"active": true,
19+
"avatarUrls": {
20+
"48x48": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png",
21+
"24x24": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png",
22+
"16x16": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png",
23+
"32x32": "https://secure.gravatar.com/avatar/3c1286d428ff8f7167844ee661f0aef0?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FMM-3.png"
24+
},
25+
"timeZone": "America/Los_Angeles",
26+
"accountType": "atlassian"
27+
},
28+
{
29+
"accountId": "712020:another-user",
30+
"emailAddress": "[email protected]",
31+
"displayName": "Another User",
32+
"active": true,
33+
"avatarUrls": {
34+
"48x48": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png",
35+
"24x24": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png",
36+
"16x16": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png",
37+
"32x32": "https://secure.gravatar.com/avatar/placeholder?d=https%3A%2F%2Favatar-management--avatars.us-west-2.staging.public.atl-paas.net%2Finitials%2FAU-3.png"
38+
},
39+
"timeZone": "America/Los_Angeles",
40+
"accountType": "atlassian"
41+
}
42+
],
43+
"headers": {
44+
"Content-Type": "application/json"
45+
}
46+
}
47+
}

src/webviews/components/issue/AbstractIssueEditorPage.tsx

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,8 @@ export abstract class AbstractIssueEditorPage<
109109
abstract getProjectKey(): string;
110110
abstract fetchUsers: (input: string) => Promise<any[]>;
111111

112+
protected abstract getApiVersion(): string;
113+
112114
protected handleInlineEdit = (field: FieldUI, newValue: any): Promise<void> => {
113115
return Promise.resolve();
114116
};
@@ -313,6 +315,15 @@ export abstract class AbstractIssueEditorPage<
313315

314316
protected loadSelectOptionsForField = (field: SelectFieldUI, input: string): Promise<any[]> => {
315317
this.setState({ isSomethingLoading: true, loadingField: field.key });
318+
319+
if (field.valueType === ValueType.User) {
320+
const apiVersion = this.getApiVersion();
321+
const userSearchUrl = this.state.siteDetails.isCloud
322+
? `${this.state.siteDetails.baseApiUrl}/api/${apiVersion}/user/search?query=`
323+
: `${this.state.siteDetails.baseApiUrl}/api/${apiVersion}/user/search?username=`;
324+
return this.loadSelectOptions(input, userSearchUrl);
325+
}
326+
316327
return this.loadSelectOptions(input, this.fixAutocompleteUrl(field.autoCompleteUrl));
317328
};
318329

src/webviews/components/issue/create-issue-screen/CreateIssuePage.tsx

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,10 @@ export default class CreateIssuePage extends AbstractIssueEditorPage<Emit, Accep
111111
return this.state.fieldValues['project'].key;
112112
}
113113

114+
protected override getApiVersion(): string {
115+
return String(this.state.apiVersion);
116+
}
117+
114118
constructor(props: any) {
115119
super(props);
116120
this.state = emptyState;
@@ -336,12 +340,12 @@ export default class CreateIssuePage extends AbstractIssueEditorPage<Emit, Accep
336340
};
337341

338342
fetchUsers = (input: string) => {
339-
return this.loadSelectOptions(
340-
input,
341-
`${this.state.siteDetails.baseApiUrl}/api/${this.state.apiVersion}/user/search?${
342-
this.state.siteDetails.isCloud ? 'query' : 'username'
343-
}=`,
344-
);
343+
const apiVersion = this.getApiVersion();
344+
const userSearchUrl = this.state.siteDetails.isCloud
345+
? `${this.state.siteDetails.baseApiUrl}/api/${apiVersion}/user/search?query=`
346+
: `${this.state.siteDetails.baseApiUrl}/api/${apiVersion}/user/search?username=`;
347+
348+
return this.loadSelectOptions(input, userSearchUrl);
345349
};
346350

347351
private getFieldError(fieldKey: string): string | undefined {

src/webviews/components/issue/view-issue-screen/JiraIssuePage.tsx

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,10 @@ export default class JiraIssuePage extends AbstractIssueEditorPage<Emit, Accept,
8383
return this.state.key.substring(0, this.state.key.indexOf('-'));
8484
};
8585

86+
protected override getApiVersion(): string {
87+
return String(this.state.apiVersion);
88+
}
89+
8690
override onMessageReceived(e: any): boolean {
8791
const handled = super.onMessageReceived(e);
8892

@@ -200,12 +204,12 @@ export default class JiraIssuePage extends AbstractIssueEditorPage<Emit, Accept,
200204
};
201205

202206
fetchUsers = (input: string) => {
203-
return this.loadSelectOptions(
204-
input,
205-
`${this.state.siteDetails.baseApiUrl}/api/${this.state.apiVersion}/user/search?${
206-
this.state.siteDetails.isCloud ? 'query' : 'username'
207-
}=`,
208-
);
207+
const apiVersion = this.getApiVersion();
208+
const userSearchUrl = this.state.siteDetails.isCloud
209+
? `${this.state.siteDetails.baseApiUrl}/api/${apiVersion}/user/search?query=`
210+
: `${this.state.siteDetails.baseApiUrl}/api/${apiVersion}/user/search?username=`;
211+
212+
return this.loadSelectOptions(input, userSearchUrl);
209213
};
210214

211215
protected override handleInlineEdit = async (field: FieldUI, newValue: any) => {

0 commit comments

Comments
 (0)