@roadiehq/backstage-plugin-jira
Version:
47 lines (44 loc) • 1.2 kB
JavaScript
import { JiraProductStrategy } from '../base.esm.js';
class JiraCloudStrategy extends JiraProductStrategy {
async pagedIssuesRequest(apiUrl, jql, maxResults) {
let issues = [];
let nextPageToken;
do {
const data = {
jql,
maxResults: maxResults ?? 5e3,
fields: [
"key",
"issuetype",
"summary",
"status",
"assignee",
"priority",
"parent",
"created",
"updated",
"project"
],
nextPageToken
};
const request = await this.options.fetchApi.fetch(`${apiUrl}search/jql`, {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(data)
});
if (!request.ok) {
throw new Error(
`failed to fetch data, status ${request.status}: ${request.statusText}`
);
}
const response = await request.json();
nextPageToken = response.nextPageToken;
issues = issues.concat(response.issues);
} while (nextPageToken !== void 0);
return issues;
}
}
export { JiraCloudStrategy };
//# sourceMappingURL=index.esm.js.map