@resolution/atlassian-api-common 0.15.3 → 0.15.4

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.
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.createAsUserMethod = exports.createAsAppMethod = exports.getCommonApiClientOptions = exports.formatHttpErrorMessage = void 0;
4
13
  const ApiError_1 = require("../ApiError");
@@ -62,10 +71,48 @@ function formatHttpErrorMessage(response, request) {
62
71
  return `HTTP Error ${request.method} ${url.pathname} ${response.status} (${response.statusText})${additionalDetails}`;
63
72
  }
64
73
  exports.formatHttpErrorMessage = formatHttpErrorMessage;
74
+ const followRedirects = ({ response }) => __awaiter(void 0, void 0, void 0, function* () {
75
+ try {
76
+ const redirectUrl = new URL(response.headers["location"], response.url);
77
+ const responseUrl = new URL(response.url);
78
+ // Make a redirect including authentication if it's a call to Atlassian API.
79
+ // Checking by comparing response host and redirect host.
80
+ // If placeholder host is returned, check for known API paths.
81
+ if (
82
+ // If host is the same, we are allowed to include authentication.
83
+ redirectUrl.host === responseUrl.host ||
84
+ // This host placeholder is currently returned by AP implementation
85
+ (responseUrl.host === "your-domain.atlassian.net" &&
86
+ // Jira Platform
87
+ (redirectUrl.pathname.startsWith("/rest/api/") ||
88
+ // Jira Software
89
+ redirectUrl.pathname.startsWith("/rest/agile/") ||
90
+ // Jira Service Management
91
+ redirectUrl.pathname.startsWith("/rest/servicedeskapi/") ||
92
+ // Confluence V1
93
+ redirectUrl.pathname.startsWith("/wiki/rest/") ||
94
+ // Confluence V2
95
+ redirectUrl.pathname.startsWith("/wiki/api/"))) ||
96
+ // Dedicated API host.
97
+ redirectUrl.host === "api.atlassian.com") {
98
+ return { type: "redirect" };
99
+ }
100
+ else {
101
+ // For redirects to static resources or other domains do not include authentication.
102
+ return { type: "externalRedirect" };
103
+ }
104
+ }
105
+ catch (e) {
106
+ return {
107
+ type: "error",
108
+ };
109
+ }
110
+ });
65
111
  function getCommonApiClientOptions(options, productName) {
66
112
  const result = {
67
113
  fetch: getFetchByOptions(options, productName),
68
114
  formatHttpErrorMessage,
115
+ followRedirects,
69
116
  errorClass: ApiError_1.ApiError,
70
117
  };
71
118
  if ("baseUrl" in options && options.baseUrl !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetch/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetch/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resolution/atlassian-api-common",
3
- "version": "0.15.3",
3
+ "version": "0.15.4",
4
4
  "description": "Shared code across different implementations of Atlassian API Clients.",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -43,5 +43,5 @@
43
43
  "publishConfig": {
44
44
  "access": "public"
45
45
  },
46
- "gitHead": "c42db33befcf3903e9fbaecd8ec5340472ac9034"
46
+ "gitHead": "2df6cf56c69011a3b61d7b63fff3d1c1a67acd18"
47
47
  }