@atlaskit/util-service-support 6.3.4 → 6.4.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.
- package/CHANGELOG.md +15 -0
- package/afm-cc/tsconfig.json +0 -2
- package/afm-products/tsconfig.json +0 -2
- package/dist/cjs/serviceUtils.js +25 -1
- package/dist/es2019/serviceUtils.js +22 -0
- package/dist/esm/serviceUtils.js +23 -0
- package/dist/types/serviceUtils.d.ts +5 -0
- package/dist/types/types.d.ts +5 -0
- package/dist/types-ts4.5/serviceUtils.d.ts +5 -0
- package/dist/types-ts4.5/types.d.ts +5 -0
- package/multipartServiceUtils/package.json +14 -0
- package/package.json +2 -2
- package/tsconfig.json +2 -9
- package/afm-jira/tsconfig.json +0 -34
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @atlaskit/util-service-support
|
|
2
2
|
|
|
3
|
+
## 6.4.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`302503d41b736`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/302503d41b736) -
|
|
8
|
+
Autofix: add explicit package exports (barrel removal)
|
|
9
|
+
|
|
10
|
+
## 6.3.5
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- [`6344a66774597`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/6344a66774597) -
|
|
15
|
+
Add optional reportTracingHeaders callback and extractTracingHeaders utility to
|
|
16
|
+
RequestServiceOptions for extracting tracing headers from responses
|
|
17
|
+
|
|
3
18
|
## 6.3.4
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
package/afm-cc/tsconfig.json
CHANGED
package/dist/cjs/serviceUtils.js
CHANGED
|
@@ -4,13 +4,31 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.requestService = void 0;
|
|
7
|
+
exports.requestService = exports.extractTracingHeaders = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
9
|
var _experienceTraceIdContext = require("@atlaskit/react-ufo/experience-trace-id-context");
|
|
10
10
|
var _types = require("./types");
|
|
11
11
|
var _shared = require("./shared");
|
|
12
12
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
13
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
|
+
var TRACING_RESPONSE_HEADERS = ['x-trace-id', 'atl-request-id'];
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Extracts tracing headers (x-trace-id, atl-request-id) from a Response object.
|
|
18
|
+
* Returns only headers that are present in the response.
|
|
19
|
+
*/
|
|
20
|
+
var extractTracingHeaders = exports.extractTracingHeaders = function extractTracingHeaders(response) {
|
|
21
|
+
var headers = {};
|
|
22
|
+
for (var _i = 0, _TRACING_RESPONSE_HEA = TRACING_RESPONSE_HEADERS; _i < _TRACING_RESPONSE_HEA.length; _i++) {
|
|
23
|
+
var name = _TRACING_RESPONSE_HEA[_i];
|
|
24
|
+
var value = response.headers.get(name);
|
|
25
|
+
if (value) {
|
|
26
|
+
headers[name] = value;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return headers;
|
|
30
|
+
};
|
|
31
|
+
|
|
14
32
|
/**
|
|
15
33
|
* @returns Promise containing the json response
|
|
16
34
|
*/
|
|
@@ -38,6 +56,12 @@ var _requestService = exports.requestService = function requestService(serviceCo
|
|
|
38
56
|
credentials: credentials
|
|
39
57
|
});
|
|
40
58
|
return fetch(requestUrl, requestOptions).then(function (response) {
|
|
59
|
+
if (options !== null && options !== void 0 && options.reportTracingHeaders) {
|
|
60
|
+
var _tracingHeaders = extractTracingHeaders(response);
|
|
61
|
+
if (Object.keys(_tracingHeaders).length > 0) {
|
|
62
|
+
options.reportTracingHeaders(_tracingHeaders);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
41
65
|
if (response.status === 204) {
|
|
42
66
|
return Promise.resolve();
|
|
43
67
|
} else if (response.ok) {
|
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
import { getActiveTraceHttpRequestHeaders } from '@atlaskit/react-ufo/experience-trace-id-context';
|
|
2
2
|
import { buildCredentials } from './types';
|
|
3
3
|
import { defaultRequestServiceOptions, buildUrl, buildHeaders } from './shared';
|
|
4
|
+
const TRACING_RESPONSE_HEADERS = ['x-trace-id', 'atl-request-id'];
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Extracts tracing headers (x-trace-id, atl-request-id) from a Response object.
|
|
8
|
+
* Returns only headers that are present in the response.
|
|
9
|
+
*/
|
|
10
|
+
export const extractTracingHeaders = response => {
|
|
11
|
+
const headers = {};
|
|
12
|
+
for (const name of TRACING_RESPONSE_HEADERS) {
|
|
13
|
+
const value = response.headers.get(name);
|
|
14
|
+
if (value) {
|
|
15
|
+
headers[name] = value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return headers;
|
|
19
|
+
};
|
|
4
20
|
|
|
5
21
|
/**
|
|
6
22
|
* @returns Promise containing the json response
|
|
@@ -36,6 +52,12 @@ export const requestService = (serviceConfig, options) => {
|
|
|
36
52
|
credentials
|
|
37
53
|
};
|
|
38
54
|
return fetch(requestUrl, requestOptions).then(response => {
|
|
55
|
+
if (options !== null && options !== void 0 && options.reportTracingHeaders) {
|
|
56
|
+
const tracingHeaders = extractTracingHeaders(response);
|
|
57
|
+
if (Object.keys(tracingHeaders).length > 0) {
|
|
58
|
+
options.reportTracingHeaders(tracingHeaders);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
39
61
|
if (response.status === 204) {
|
|
40
62
|
return Promise.resolve();
|
|
41
63
|
} else if (response.ok) {
|
package/dist/esm/serviceUtils.js
CHANGED
|
@@ -4,6 +4,23 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
4
4
|
import { getActiveTraceHttpRequestHeaders } from '@atlaskit/react-ufo/experience-trace-id-context';
|
|
5
5
|
import { buildCredentials } from './types';
|
|
6
6
|
import { defaultRequestServiceOptions, buildUrl, buildHeaders } from './shared';
|
|
7
|
+
var TRACING_RESPONSE_HEADERS = ['x-trace-id', 'atl-request-id'];
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Extracts tracing headers (x-trace-id, atl-request-id) from a Response object.
|
|
11
|
+
* Returns only headers that are present in the response.
|
|
12
|
+
*/
|
|
13
|
+
export var extractTracingHeaders = function extractTracingHeaders(response) {
|
|
14
|
+
var headers = {};
|
|
15
|
+
for (var _i = 0, _TRACING_RESPONSE_HEA = TRACING_RESPONSE_HEADERS; _i < _TRACING_RESPONSE_HEA.length; _i++) {
|
|
16
|
+
var name = _TRACING_RESPONSE_HEA[_i];
|
|
17
|
+
var value = response.headers.get(name);
|
|
18
|
+
if (value) {
|
|
19
|
+
headers[name] = value;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return headers;
|
|
23
|
+
};
|
|
7
24
|
|
|
8
25
|
/**
|
|
9
26
|
* @returns Promise containing the json response
|
|
@@ -32,6 +49,12 @@ var _requestService = function requestService(serviceConfig, options) {
|
|
|
32
49
|
credentials: credentials
|
|
33
50
|
});
|
|
34
51
|
return fetch(requestUrl, requestOptions).then(function (response) {
|
|
52
|
+
if (options !== null && options !== void 0 && options.reportTracingHeaders) {
|
|
53
|
+
var _tracingHeaders = extractTracingHeaders(response);
|
|
54
|
+
if (Object.keys(_tracingHeaders).length > 0) {
|
|
55
|
+
options.reportTracingHeaders(_tracingHeaders);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
35
58
|
if (response.status === 204) {
|
|
36
59
|
return Promise.resolve();
|
|
37
60
|
} else if (response.ok) {
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type RequestServiceOptions, type ServiceConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Extracts tracing headers (x-trace-id, atl-request-id) from a Response object.
|
|
4
|
+
* Returns only headers that are present in the response.
|
|
5
|
+
*/
|
|
6
|
+
export declare const extractTracingHeaders: (response: Response) => Record<string, string>;
|
|
2
7
|
/**
|
|
3
8
|
* @returns Promise containing the json response
|
|
4
9
|
*/
|
package/dist/types/types.d.ts
CHANGED
|
@@ -76,5 +76,10 @@ export interface RequestServiceOptions {
|
|
|
76
76
|
ignoreResponsePayload?: boolean;
|
|
77
77
|
path?: string;
|
|
78
78
|
queryParams?: KeyValues;
|
|
79
|
+
/**
|
|
80
|
+
* Optional callback invoked with tracing headers extracted from the response.
|
|
81
|
+
* Only exposes x-trace-id and atl-request-id headers.
|
|
82
|
+
*/
|
|
83
|
+
reportTracingHeaders?: (headers: Record<string, string>) => void;
|
|
79
84
|
requestInit?: RequestInit;
|
|
80
85
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type RequestServiceOptions, type ServiceConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Extracts tracing headers (x-trace-id, atl-request-id) from a Response object.
|
|
4
|
+
* Returns only headers that are present in the response.
|
|
5
|
+
*/
|
|
6
|
+
export declare const extractTracingHeaders: (response: Response) => Record<string, string>;
|
|
2
7
|
/**
|
|
3
8
|
* @returns Promise containing the json response
|
|
4
9
|
*/
|
|
@@ -76,5 +76,10 @@ export interface RequestServiceOptions {
|
|
|
76
76
|
ignoreResponsePayload?: boolean;
|
|
77
77
|
path?: string;
|
|
78
78
|
queryParams?: KeyValues;
|
|
79
|
+
/**
|
|
80
|
+
* Optional callback invoked with tracing headers extracted from the response.
|
|
81
|
+
* Only exposes x-trace-id and atl-request-id headers.
|
|
82
|
+
*/
|
|
83
|
+
reportTracingHeaders?: (headers: Record<string, string>) => void;
|
|
79
84
|
requestInit?: RequestInit;
|
|
80
85
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@atlaskit/util-service-support/multipartServiceUtils",
|
|
3
|
+
"main": "../dist/cjs/multipartServiceUtils.js",
|
|
4
|
+
"module": "../dist/esm/multipartServiceUtils.js",
|
|
5
|
+
"module:es2019": "../dist/es2019/multipartServiceUtils.js",
|
|
6
|
+
"types": "../dist/types/multipartServiceUtils.d.ts",
|
|
7
|
+
"typesVersions": {
|
|
8
|
+
">=4.5 <5.9": {
|
|
9
|
+
"*": [
|
|
10
|
+
"../dist/types-ts4.5/multipartServiceUtils.d.ts"
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/util-service-support",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.4.0",
|
|
4
4
|
"description": "A library of support classes for integrating React components with REST HTTP services",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
32
|
-
"@atlaskit/react-ufo": "^5.
|
|
32
|
+
"@atlaskit/react-ufo": "^5.20.0",
|
|
33
33
|
"@babel/runtime": "^7.0.0",
|
|
34
34
|
"meros": "^1.3.0"
|
|
35
35
|
},
|
package/tsconfig.json
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
},
|
|
5
|
-
"include": [
|
|
6
|
-
"./src/**/*.ts",
|
|
7
|
-
"./src/**/*.tsx",
|
|
8
|
-
"./docs/**/*.ts",
|
|
9
|
-
"./docs/**/*.tsx"
|
|
10
|
-
]
|
|
2
|
+
"extends": "../../../tsconfig.json",
|
|
3
|
+
"include": ["./src/**/*.ts", "./src/**/*.tsx", "./docs/**/*.ts", "./docs/**/*.tsx"]
|
|
11
4
|
}
|
package/afm-jira/tsconfig.json
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": "../../../../tsconfig.entry-points.jira.json",
|
|
3
|
-
"compilerOptions": {
|
|
4
|
-
"declaration": true,
|
|
5
|
-
"target": "es5",
|
|
6
|
-
"outDir": "../../../../../jira/tsDist/@atlaskit__util-service-support/app",
|
|
7
|
-
"rootDir": "../",
|
|
8
|
-
"composite": true,
|
|
9
|
-
"noCheck": true
|
|
10
|
-
},
|
|
11
|
-
"include": [
|
|
12
|
-
"../src/**/*.ts",
|
|
13
|
-
"../src/**/*.tsx"
|
|
14
|
-
],
|
|
15
|
-
"exclude": [
|
|
16
|
-
"../src/**/__tests__/*",
|
|
17
|
-
"../src/**/*.test.*",
|
|
18
|
-
"../src/**/test.*",
|
|
19
|
-
"../src/**/examples.*",
|
|
20
|
-
"../src/**/examples/*",
|
|
21
|
-
"../src/**/examples/**/*",
|
|
22
|
-
"../src/**/*.stories.*",
|
|
23
|
-
"../src/**/stories/*",
|
|
24
|
-
"../src/**/stories/**/*"
|
|
25
|
-
],
|
|
26
|
-
"references": [
|
|
27
|
-
{
|
|
28
|
-
"path": "../../../platform/feature-flags/afm-jira/tsconfig.json"
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"path": "../../../react-ufo/atlaskit/afm-jira/tsconfig.json"
|
|
32
|
-
}
|
|
33
|
-
]
|
|
34
|
-
}
|