@commercetools/ts-client 1.2.0 → 2.0.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 +12 -0
- package/README.md +0 -1
- package/dist/commercetools-ts-client.browser.cjs.js +85 -64
- package/dist/commercetools-ts-client.browser.esm.js +85 -64
- package/dist/commercetools-ts-client.cjs.d.ts +1 -1
- package/dist/commercetools-ts-client.cjs.dev.js +85 -64
- package/dist/commercetools-ts-client.cjs.prod.js +85 -64
- package/dist/commercetools-ts-client.esm.js +85 -64
- package/dist/declarations/src/client/builder.d.ts +9 -4
- package/dist/declarations/src/client/builder.d.ts.map +1 -0
- package/dist/declarations/src/client/client.d.ts +1 -0
- package/dist/declarations/src/client/client.d.ts.map +1 -0
- package/dist/declarations/src/client/index.d.ts +1 -0
- package/dist/declarations/src/client/index.d.ts.map +1 -0
- package/dist/declarations/src/index.d.ts +1 -0
- package/dist/declarations/src/index.d.ts.map +1 -0
- package/dist/declarations/src/middleware/auth-middleware/anonymous-session-flow.d.ts +1 -0
- package/dist/declarations/src/middleware/auth-middleware/anonymous-session-flow.d.ts.map +1 -0
- package/dist/declarations/src/middleware/auth-middleware/client-credentials-flow.d.ts +1 -0
- package/dist/declarations/src/middleware/auth-middleware/client-credentials-flow.d.ts.map +1 -0
- package/dist/declarations/src/middleware/auth-middleware/existing-token-flow.d.ts +1 -0
- package/dist/declarations/src/middleware/auth-middleware/existing-token-flow.d.ts.map +1 -0
- package/dist/declarations/src/middleware/auth-middleware/index.d.ts +1 -0
- package/dist/declarations/src/middleware/auth-middleware/index.d.ts.map +1 -0
- package/dist/declarations/src/middleware/auth-middleware/password-flow.d.ts +1 -0
- package/dist/declarations/src/middleware/auth-middleware/password-flow.d.ts.map +1 -0
- package/dist/declarations/src/middleware/auth-middleware/refresh-token-flow.d.ts +1 -0
- package/dist/declarations/src/middleware/auth-middleware/refresh-token-flow.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-concurrent-modification-middleware.d.ts +4 -2
- package/dist/declarations/src/middleware/create-concurrent-modification-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-correlation-id-middleware.d.ts +1 -0
- package/dist/declarations/src/middleware/create-correlation-id-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-error-middleware.d.ts +1 -0
- package/dist/declarations/src/middleware/create-error-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-http-middleware.d.ts +1 -0
- package/dist/declarations/src/middleware/create-http-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-logger-middleware.d.ts +1 -0
- package/dist/declarations/src/middleware/create-logger-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-queue-middleware.d.ts +1 -0
- package/dist/declarations/src/middleware/create-queue-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/create-user-agent-middleware.d.ts +1 -0
- package/dist/declarations/src/middleware/create-user-agent-middleware.d.ts.map +1 -0
- package/dist/declarations/src/middleware/index.d.ts +1 -0
- package/dist/declarations/src/middleware/index.d.ts.map +1 -0
- package/dist/declarations/src/types/types.d.ts +29 -12
- package/package.json +6 -5
- package/dist/commercetools-ts-client.cjs.d.ts.map +0 -1
|
@@ -25,7 +25,7 @@ function toPrimitive(t, r) {
|
|
|
25
25
|
|
|
26
26
|
function toPropertyKey(t) {
|
|
27
27
|
var i = toPrimitive(t, "string");
|
|
28
|
-
return "symbol" == typeof i ? i :
|
|
28
|
+
return "symbol" == typeof i ? i : i + "";
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
function _defineProperty(obj, key, value) {
|
|
@@ -331,6 +331,14 @@ function store(initVal) {
|
|
|
331
331
|
};
|
|
332
332
|
}
|
|
333
333
|
|
|
334
|
+
function isDefined(value) {
|
|
335
|
+
return typeof value !== 'undefined' && value !== null;
|
|
336
|
+
}
|
|
337
|
+
function clean(value) {
|
|
338
|
+
if (!isDefined(value)) return '';
|
|
339
|
+
if (typeof value == 'string') return value;
|
|
340
|
+
return Object.fromEntries(Object.entries(value).filter(([_, value]) => ![null, undefined, ''].includes(value)));
|
|
341
|
+
}
|
|
334
342
|
function urlParser(url) {
|
|
335
343
|
const object = {};
|
|
336
344
|
const data = new URLSearchParams(url);
|
|
@@ -344,11 +352,13 @@ function urlParser(url) {
|
|
|
344
352
|
return object;
|
|
345
353
|
}
|
|
346
354
|
function urlStringifier(object) {
|
|
355
|
+
object = clean(object);
|
|
356
|
+
if (!object) return '';
|
|
347
357
|
const params = new URLSearchParams(object);
|
|
348
358
|
for (const [key, value] of Object.entries(object)) {
|
|
349
359
|
if (Array.isArray(value)) {
|
|
350
360
|
params.delete(key);
|
|
351
|
-
value.filter(
|
|
361
|
+
value.filter(isDefined).forEach(v => params.append(key, v));
|
|
352
362
|
}
|
|
353
363
|
}
|
|
354
364
|
return params.toString();
|
|
@@ -357,7 +367,7 @@ function parseURLString(url, parser = urlParser) {
|
|
|
357
367
|
return parser(url);
|
|
358
368
|
}
|
|
359
369
|
function stringifyURLString(object, stringifier = urlStringifier) {
|
|
360
|
-
return
|
|
370
|
+
return stringifier(object);
|
|
361
371
|
}
|
|
362
372
|
|
|
363
373
|
// import { validateUserAgentOptions } from '../utils'
|
|
@@ -904,7 +914,7 @@ function createAuthMiddlewareForRefreshTokenFlow$1(options) {
|
|
|
904
914
|
};
|
|
905
915
|
}
|
|
906
916
|
|
|
907
|
-
function createConcurrentModificationMiddleware$1() {
|
|
917
|
+
function createConcurrentModificationMiddleware$1(modifierFunction) {
|
|
908
918
|
return next => {
|
|
909
919
|
return async request => {
|
|
910
920
|
const response = await next(request);
|
|
@@ -918,13 +928,17 @@ function createConcurrentModificationMiddleware$1() {
|
|
|
918
928
|
|
|
919
929
|
// update the resource version here
|
|
920
930
|
if (version) {
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
931
|
+
if (modifierFunction) {
|
|
932
|
+
request.body = await modifierFunction(version, request, response);
|
|
933
|
+
} else {
|
|
934
|
+
request.body = typeof request.body == 'string' ? {
|
|
935
|
+
...JSON.parse(request.body),
|
|
936
|
+
version
|
|
937
|
+
} : {
|
|
938
|
+
...request.body,
|
|
939
|
+
version
|
|
940
|
+
};
|
|
941
|
+
}
|
|
928
942
|
return next(request);
|
|
929
943
|
}
|
|
930
944
|
}
|
|
@@ -946,7 +960,7 @@ function createCorrelationIdMiddleware$1(options) {
|
|
|
946
960
|
};
|
|
947
961
|
}
|
|
948
962
|
|
|
949
|
-
function createErrorMiddleware
|
|
963
|
+
function createErrorMiddleware(options) {
|
|
950
964
|
return next => async request => {
|
|
951
965
|
const response = await next(request);
|
|
952
966
|
if (response.error) {
|
|
@@ -978,7 +992,8 @@ async function executeRequest({
|
|
|
978
992
|
request,
|
|
979
993
|
abortController,
|
|
980
994
|
maskSensitiveHeaderData,
|
|
981
|
-
includeRequestInErrorResponse
|
|
995
|
+
includeRequestInErrorResponse,
|
|
996
|
+
includeResponseHeaders
|
|
982
997
|
} = clientOptions;
|
|
983
998
|
try {
|
|
984
999
|
if (timeout) timer = setTimeout(() => {
|
|
@@ -993,6 +1008,9 @@ async function executeRequest({
|
|
|
993
1008
|
body: clientOptions.body
|
|
994
1009
|
} : {})
|
|
995
1010
|
});
|
|
1011
|
+
if (!includeResponseHeaders) {
|
|
1012
|
+
response.headers = null;
|
|
1013
|
+
}
|
|
996
1014
|
if (response.statusCode >= 200 && response.statusCode < 300) {
|
|
997
1015
|
if (clientOptions.method == 'HEAD') {
|
|
998
1016
|
return {
|
|
@@ -1036,7 +1054,7 @@ async function executeRequest({
|
|
|
1036
1054
|
};
|
|
1037
1055
|
} catch (e) {
|
|
1038
1056
|
// We know that this is a network error
|
|
1039
|
-
const headers = getHeaders(e.response?.headers);
|
|
1057
|
+
const headers = includeResponseHeaders ? getHeaders(e.response?.headers) : null;
|
|
1040
1058
|
const statusCode = e.response?.status || e.response?.data0 || 0;
|
|
1041
1059
|
const message = e.response?.data?.message;
|
|
1042
1060
|
const error = createError({
|
|
@@ -1073,7 +1091,8 @@ function createHttpMiddleware$1(options) {
|
|
|
1073
1091
|
retryConfig,
|
|
1074
1092
|
getAbortController,
|
|
1075
1093
|
includeOriginalRequest,
|
|
1076
|
-
includeRequestInErrorResponse,
|
|
1094
|
+
includeRequestInErrorResponse = true,
|
|
1095
|
+
includeResponseHeaders = true,
|
|
1077
1096
|
maskSensitiveHeaderData,
|
|
1078
1097
|
httpClientOptions
|
|
1079
1098
|
} = options;
|
|
@@ -1109,6 +1128,7 @@ function createHttpMiddleware$1(options) {
|
|
|
1109
1128
|
headers: requestHeader,
|
|
1110
1129
|
includeRequestInErrorResponse,
|
|
1111
1130
|
maskSensitiveHeaderData,
|
|
1131
|
+
includeResponseHeaders,
|
|
1112
1132
|
...httpClientOptions
|
|
1113
1133
|
};
|
|
1114
1134
|
if (credentialsMode) {
|
|
@@ -1142,43 +1162,17 @@ function createHttpMiddleware$1(options) {
|
|
|
1142
1162
|
};
|
|
1143
1163
|
}
|
|
1144
1164
|
|
|
1145
|
-
// error, info, success
|
|
1146
1165
|
function createLoggerMiddleware$1(options) {
|
|
1147
1166
|
return next => {
|
|
1148
1167
|
return async request => {
|
|
1149
1168
|
let response = await next(request);
|
|
1150
1169
|
const originalResponse = Object.assign({}, response);
|
|
1151
1170
|
const {
|
|
1152
|
-
loggerFn = console.log
|
|
1153
|
-
// logLevel = 'ERROR',
|
|
1154
|
-
maskSensitiveHeaderData = true,
|
|
1155
|
-
includeOriginalRequest = true,
|
|
1156
|
-
includeResponseHeaders = true
|
|
1157
|
-
// includeRequestInErrorResponse
|
|
1171
|
+
loggerFn = console.log
|
|
1158
1172
|
} = options || {};
|
|
1159
|
-
if (includeOriginalRequest && maskSensitiveHeaderData) {
|
|
1160
|
-
maskAuthData(response.request);
|
|
1161
|
-
}
|
|
1162
|
-
if (!includeOriginalRequest) {
|
|
1163
|
-
const {
|
|
1164
|
-
request,
|
|
1165
|
-
...rest
|
|
1166
|
-
} = response;
|
|
1167
|
-
response = rest;
|
|
1168
|
-
}
|
|
1169
|
-
if (!includeResponseHeaders) {
|
|
1170
|
-
const {
|
|
1171
|
-
headers,
|
|
1172
|
-
...rest
|
|
1173
|
-
} = response;
|
|
1174
|
-
response = rest;
|
|
1175
|
-
}
|
|
1176
1173
|
if (loggerFn && typeof loggerFn == 'function') {
|
|
1177
1174
|
loggerFn(response);
|
|
1178
|
-
// return originalResponse
|
|
1179
1175
|
}
|
|
1180
|
-
|
|
1181
|
-
// console.log({ Response: response })
|
|
1182
1176
|
return originalResponse;
|
|
1183
1177
|
};
|
|
1184
1178
|
};
|
|
@@ -1230,7 +1224,7 @@ function createQueueMiddleware$1({
|
|
|
1230
1224
|
|
|
1231
1225
|
var packageJson = {
|
|
1232
1226
|
name: "@commercetools/ts-client",
|
|
1233
|
-
version: "
|
|
1227
|
+
version: "2.0.0",
|
|
1234
1228
|
engines: {
|
|
1235
1229
|
node: ">=14"
|
|
1236
1230
|
},
|
|
@@ -1266,7 +1260,7 @@ var packageJson = {
|
|
|
1266
1260
|
"abort-controller": "3.0.0",
|
|
1267
1261
|
buffer: "^6.0.3",
|
|
1268
1262
|
"node-fetch": "^2.6.1",
|
|
1269
|
-
uuid: "9.0.
|
|
1263
|
+
uuid: "9.0.1"
|
|
1270
1264
|
},
|
|
1271
1265
|
files: [
|
|
1272
1266
|
"dist",
|
|
@@ -1281,15 +1275,16 @@ var packageJson = {
|
|
|
1281
1275
|
},
|
|
1282
1276
|
devDependencies: {
|
|
1283
1277
|
"common-tags": "1.8.2",
|
|
1284
|
-
dotenv: "16.
|
|
1285
|
-
jest: "29.
|
|
1278
|
+
dotenv: "16.4.5",
|
|
1279
|
+
jest: "29.7.0",
|
|
1286
1280
|
nock: "12.0.3",
|
|
1287
1281
|
"organize-imports-cli": "0.10.0"
|
|
1288
1282
|
},
|
|
1289
1283
|
scripts: {
|
|
1290
1284
|
organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
|
|
1291
1285
|
postbuild: "yarn organize_imports",
|
|
1292
|
-
post_process_generate: "yarn organize_imports"
|
|
1286
|
+
post_process_generate: "yarn organize_imports",
|
|
1287
|
+
docs: "typedoc --out docs"
|
|
1293
1288
|
}
|
|
1294
1289
|
};
|
|
1295
1290
|
|
|
@@ -1297,7 +1292,7 @@ function createUserAgentMiddleware$1(options) {
|
|
|
1297
1292
|
return next => async request => {
|
|
1298
1293
|
const userAgent = createUserAgent({
|
|
1299
1294
|
...options,
|
|
1300
|
-
name:
|
|
1295
|
+
name: `${options.name ? options.name + '/' : ''}commercetools-sdk-javascript-v3/${packageJson.version}`
|
|
1301
1296
|
});
|
|
1302
1297
|
const requestWithUserAgent = {
|
|
1303
1298
|
...request,
|
|
@@ -1319,7 +1314,7 @@ var middleware = /*#__PURE__*/Object.freeze({
|
|
|
1319
1314
|
createAuthMiddlewareForRefreshTokenFlow: createAuthMiddlewareForRefreshTokenFlow$1,
|
|
1320
1315
|
createConcurrentModificationMiddleware: createConcurrentModificationMiddleware$1,
|
|
1321
1316
|
createCorrelationIdMiddleware: createCorrelationIdMiddleware$1,
|
|
1322
|
-
createErrorMiddleware: createErrorMiddleware
|
|
1317
|
+
createErrorMiddleware: createErrorMiddleware,
|
|
1323
1318
|
createHttpMiddleware: createHttpMiddleware$1,
|
|
1324
1319
|
createLoggerMiddleware: createLoggerMiddleware$1,
|
|
1325
1320
|
createQueueMiddleware: createQueueMiddleware$1,
|
|
@@ -1462,7 +1457,13 @@ function createClient(middlewares) {
|
|
|
1462
1457
|
reject,
|
|
1463
1458
|
resolve,
|
|
1464
1459
|
...request
|
|
1465
|
-
}).then(
|
|
1460
|
+
}).then(res => {
|
|
1461
|
+
if (res.error) {
|
|
1462
|
+
reject(res.error);
|
|
1463
|
+
} else {
|
|
1464
|
+
resolve(res);
|
|
1465
|
+
}
|
|
1466
|
+
}).catch(reject);
|
|
1466
1467
|
});
|
|
1467
1468
|
}
|
|
1468
1469
|
};
|
|
@@ -1479,8 +1480,7 @@ const {
|
|
|
1479
1480
|
createLoggerMiddleware,
|
|
1480
1481
|
createQueueMiddleware,
|
|
1481
1482
|
createUserAgentMiddleware,
|
|
1482
|
-
createConcurrentModificationMiddleware
|
|
1483
|
-
createErrorMiddleware
|
|
1483
|
+
createConcurrentModificationMiddleware
|
|
1484
1484
|
} = middleware;
|
|
1485
1485
|
class ClientBuilder {
|
|
1486
1486
|
constructor() {
|
|
@@ -1492,7 +1492,9 @@ class ClientBuilder {
|
|
|
1492
1492
|
_defineProperty(this, "loggerMiddleware", void 0);
|
|
1493
1493
|
_defineProperty(this, "queueMiddleware", void 0);
|
|
1494
1494
|
_defineProperty(this, "concurrentMiddleware", void 0);
|
|
1495
|
-
_defineProperty(this, "
|
|
1495
|
+
_defineProperty(this, "telemetryMiddleware", void 0);
|
|
1496
|
+
_defineProperty(this, "beforeMiddleware", void 0);
|
|
1497
|
+
_defineProperty(this, "afterMiddleware", void 0);
|
|
1496
1498
|
_defineProperty(this, "middlewares", []);
|
|
1497
1499
|
this.userAgentMiddleware = createUserAgentMiddleware({});
|
|
1498
1500
|
}
|
|
@@ -1611,30 +1613,49 @@ class ClientBuilder {
|
|
|
1611
1613
|
});
|
|
1612
1614
|
return this;
|
|
1613
1615
|
}
|
|
1614
|
-
withConcurrentModificationMiddleware() {
|
|
1615
|
-
this.concurrentMiddleware = createConcurrentModificationMiddleware();
|
|
1616
|
+
withConcurrentModificationMiddleware(options) {
|
|
1617
|
+
this.concurrentMiddleware = createConcurrentModificationMiddleware(options?.concurrentModificationHandlerFn);
|
|
1616
1618
|
return this;
|
|
1617
1619
|
}
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
+
withTelemetryMiddleware(options) {
|
|
1621
|
+
const {
|
|
1622
|
+
createTelemetryMiddleware,
|
|
1623
|
+
...rest
|
|
1624
|
+
} = options;
|
|
1625
|
+
this.withUserAgentMiddleware({
|
|
1626
|
+
customAgent: rest?.userAgent || 'typescript-sdk-apm-middleware'
|
|
1627
|
+
});
|
|
1628
|
+
this.telemetryMiddleware = createTelemetryMiddleware(rest);
|
|
1629
|
+
return this;
|
|
1630
|
+
}
|
|
1631
|
+
withBeforeExecutionMiddleware(options) {
|
|
1632
|
+
const {
|
|
1633
|
+
middleware,
|
|
1634
|
+
...rest
|
|
1635
|
+
} = options || {};
|
|
1636
|
+
this.beforeMiddleware = options.middleware(rest);
|
|
1637
|
+
return this;
|
|
1638
|
+
}
|
|
1639
|
+
withAfterExecutionMiddleware(options) {
|
|
1640
|
+
const {
|
|
1641
|
+
middleware,
|
|
1642
|
+
...rest
|
|
1643
|
+
} = options || {};
|
|
1644
|
+
this.afterMiddleware = options.middleware(rest);
|
|
1620
1645
|
return this;
|
|
1621
1646
|
}
|
|
1622
1647
|
build() {
|
|
1623
1648
|
const middlewares = this.middlewares.slice();
|
|
1624
|
-
|
|
1625
|
-
/**
|
|
1626
|
-
* - use default retry policy if not explicity added
|
|
1627
|
-
* - add retry middleware to be used by concurrent modification
|
|
1628
|
-
* middleware if not explicitly added as part of the middleware
|
|
1629
|
-
*/
|
|
1649
|
+
if (this.telemetryMiddleware) middlewares.push(this.telemetryMiddleware);
|
|
1630
1650
|
if (this.correlationIdMiddleware) middlewares.push(this.correlationIdMiddleware);
|
|
1631
1651
|
if (this.userAgentMiddleware) middlewares.push(this.userAgentMiddleware);
|
|
1632
1652
|
if (this.authMiddleware) middlewares.push(this.authMiddleware);
|
|
1653
|
+
if (this.beforeMiddleware) middlewares.push(this.beforeMiddleware);
|
|
1633
1654
|
if (this.queueMiddleware) middlewares.push(this.queueMiddleware);
|
|
1634
1655
|
if (this.loggerMiddleware) middlewares.push(this.loggerMiddleware);
|
|
1635
|
-
if (this.errorMiddleware) middlewares.push(this.errorMiddleware);
|
|
1636
1656
|
if (this.concurrentMiddleware) middlewares.push(this.concurrentMiddleware);
|
|
1637
1657
|
if (this.httpMiddleware) middlewares.push(this.httpMiddleware);
|
|
1658
|
+
if (this.afterMiddleware) middlewares.push(this.afterMiddleware);
|
|
1638
1659
|
return createClient({
|
|
1639
1660
|
middlewares
|
|
1640
1661
|
});
|
|
@@ -25,7 +25,7 @@ function toPrimitive(t, r) {
|
|
|
25
25
|
|
|
26
26
|
function toPropertyKey(t) {
|
|
27
27
|
var i = toPrimitive(t, "string");
|
|
28
|
-
return "symbol" == typeof i ? i :
|
|
28
|
+
return "symbol" == typeof i ? i : i + "";
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
function _defineProperty(obj, key, value) {
|
|
@@ -331,6 +331,14 @@ function store(initVal) {
|
|
|
331
331
|
};
|
|
332
332
|
}
|
|
333
333
|
|
|
334
|
+
function isDefined(value) {
|
|
335
|
+
return typeof value !== 'undefined' && value !== null;
|
|
336
|
+
}
|
|
337
|
+
function clean(value) {
|
|
338
|
+
if (!isDefined(value)) return '';
|
|
339
|
+
if (typeof value == 'string') return value;
|
|
340
|
+
return Object.fromEntries(Object.entries(value).filter(([_, value]) => ![null, undefined, ''].includes(value)));
|
|
341
|
+
}
|
|
334
342
|
function urlParser(url) {
|
|
335
343
|
const object = {};
|
|
336
344
|
const data = new URLSearchParams(url);
|
|
@@ -344,11 +352,13 @@ function urlParser(url) {
|
|
|
344
352
|
return object;
|
|
345
353
|
}
|
|
346
354
|
function urlStringifier(object) {
|
|
355
|
+
object = clean(object);
|
|
356
|
+
if (!object) return '';
|
|
347
357
|
const params = new URLSearchParams(object);
|
|
348
358
|
for (const [key, value] of Object.entries(object)) {
|
|
349
359
|
if (Array.isArray(value)) {
|
|
350
360
|
params.delete(key);
|
|
351
|
-
value.filter(
|
|
361
|
+
value.filter(isDefined).forEach(v => params.append(key, v));
|
|
352
362
|
}
|
|
353
363
|
}
|
|
354
364
|
return params.toString();
|
|
@@ -357,7 +367,7 @@ function parseURLString(url, parser = urlParser) {
|
|
|
357
367
|
return parser(url);
|
|
358
368
|
}
|
|
359
369
|
function stringifyURLString(object, stringifier = urlStringifier) {
|
|
360
|
-
return
|
|
370
|
+
return stringifier(object);
|
|
361
371
|
}
|
|
362
372
|
|
|
363
373
|
// import { validateUserAgentOptions } from '../utils'
|
|
@@ -904,7 +914,7 @@ function createAuthMiddlewareForRefreshTokenFlow$1(options) {
|
|
|
904
914
|
};
|
|
905
915
|
}
|
|
906
916
|
|
|
907
|
-
function createConcurrentModificationMiddleware$1() {
|
|
917
|
+
function createConcurrentModificationMiddleware$1(modifierFunction) {
|
|
908
918
|
return next => {
|
|
909
919
|
return async request => {
|
|
910
920
|
const response = await next(request);
|
|
@@ -918,13 +928,17 @@ function createConcurrentModificationMiddleware$1() {
|
|
|
918
928
|
|
|
919
929
|
// update the resource version here
|
|
920
930
|
if (version) {
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
931
|
+
if (modifierFunction) {
|
|
932
|
+
request.body = await modifierFunction(version, request, response);
|
|
933
|
+
} else {
|
|
934
|
+
request.body = typeof request.body == 'string' ? {
|
|
935
|
+
...JSON.parse(request.body),
|
|
936
|
+
version
|
|
937
|
+
} : {
|
|
938
|
+
...request.body,
|
|
939
|
+
version
|
|
940
|
+
};
|
|
941
|
+
}
|
|
928
942
|
return next(request);
|
|
929
943
|
}
|
|
930
944
|
}
|
|
@@ -946,7 +960,7 @@ function createCorrelationIdMiddleware$1(options) {
|
|
|
946
960
|
};
|
|
947
961
|
}
|
|
948
962
|
|
|
949
|
-
function createErrorMiddleware
|
|
963
|
+
function createErrorMiddleware(options) {
|
|
950
964
|
return next => async request => {
|
|
951
965
|
const response = await next(request);
|
|
952
966
|
if (response.error) {
|
|
@@ -978,7 +992,8 @@ async function executeRequest({
|
|
|
978
992
|
request,
|
|
979
993
|
abortController,
|
|
980
994
|
maskSensitiveHeaderData,
|
|
981
|
-
includeRequestInErrorResponse
|
|
995
|
+
includeRequestInErrorResponse,
|
|
996
|
+
includeResponseHeaders
|
|
982
997
|
} = clientOptions;
|
|
983
998
|
try {
|
|
984
999
|
if (timeout) timer = setTimeout(() => {
|
|
@@ -993,6 +1008,9 @@ async function executeRequest({
|
|
|
993
1008
|
body: clientOptions.body
|
|
994
1009
|
} : {})
|
|
995
1010
|
});
|
|
1011
|
+
if (!includeResponseHeaders) {
|
|
1012
|
+
response.headers = null;
|
|
1013
|
+
}
|
|
996
1014
|
if (response.statusCode >= 200 && response.statusCode < 300) {
|
|
997
1015
|
if (clientOptions.method == 'HEAD') {
|
|
998
1016
|
return {
|
|
@@ -1036,7 +1054,7 @@ async function executeRequest({
|
|
|
1036
1054
|
};
|
|
1037
1055
|
} catch (e) {
|
|
1038
1056
|
// We know that this is a network error
|
|
1039
|
-
const headers = getHeaders(e.response?.headers);
|
|
1057
|
+
const headers = includeResponseHeaders ? getHeaders(e.response?.headers) : null;
|
|
1040
1058
|
const statusCode = e.response?.status || e.response?.data0 || 0;
|
|
1041
1059
|
const message = e.response?.data?.message;
|
|
1042
1060
|
const error = createError({
|
|
@@ -1073,7 +1091,8 @@ function createHttpMiddleware$1(options) {
|
|
|
1073
1091
|
retryConfig,
|
|
1074
1092
|
getAbortController,
|
|
1075
1093
|
includeOriginalRequest,
|
|
1076
|
-
includeRequestInErrorResponse,
|
|
1094
|
+
includeRequestInErrorResponse = true,
|
|
1095
|
+
includeResponseHeaders = true,
|
|
1077
1096
|
maskSensitiveHeaderData,
|
|
1078
1097
|
httpClientOptions
|
|
1079
1098
|
} = options;
|
|
@@ -1109,6 +1128,7 @@ function createHttpMiddleware$1(options) {
|
|
|
1109
1128
|
headers: requestHeader,
|
|
1110
1129
|
includeRequestInErrorResponse,
|
|
1111
1130
|
maskSensitiveHeaderData,
|
|
1131
|
+
includeResponseHeaders,
|
|
1112
1132
|
...httpClientOptions
|
|
1113
1133
|
};
|
|
1114
1134
|
if (credentialsMode) {
|
|
@@ -1142,43 +1162,17 @@ function createHttpMiddleware$1(options) {
|
|
|
1142
1162
|
};
|
|
1143
1163
|
}
|
|
1144
1164
|
|
|
1145
|
-
// error, info, success
|
|
1146
1165
|
function createLoggerMiddleware$1(options) {
|
|
1147
1166
|
return next => {
|
|
1148
1167
|
return async request => {
|
|
1149
1168
|
let response = await next(request);
|
|
1150
1169
|
const originalResponse = Object.assign({}, response);
|
|
1151
1170
|
const {
|
|
1152
|
-
loggerFn = console.log
|
|
1153
|
-
// logLevel = 'ERROR',
|
|
1154
|
-
maskSensitiveHeaderData = true,
|
|
1155
|
-
includeOriginalRequest = true,
|
|
1156
|
-
includeResponseHeaders = true
|
|
1157
|
-
// includeRequestInErrorResponse
|
|
1171
|
+
loggerFn = console.log
|
|
1158
1172
|
} = options || {};
|
|
1159
|
-
if (includeOriginalRequest && maskSensitiveHeaderData) {
|
|
1160
|
-
maskAuthData(response.request);
|
|
1161
|
-
}
|
|
1162
|
-
if (!includeOriginalRequest) {
|
|
1163
|
-
const {
|
|
1164
|
-
request,
|
|
1165
|
-
...rest
|
|
1166
|
-
} = response;
|
|
1167
|
-
response = rest;
|
|
1168
|
-
}
|
|
1169
|
-
if (!includeResponseHeaders) {
|
|
1170
|
-
const {
|
|
1171
|
-
headers,
|
|
1172
|
-
...rest
|
|
1173
|
-
} = response;
|
|
1174
|
-
response = rest;
|
|
1175
|
-
}
|
|
1176
1173
|
if (loggerFn && typeof loggerFn == 'function') {
|
|
1177
1174
|
loggerFn(response);
|
|
1178
|
-
// return originalResponse
|
|
1179
1175
|
}
|
|
1180
|
-
|
|
1181
|
-
// console.log({ Response: response })
|
|
1182
1176
|
return originalResponse;
|
|
1183
1177
|
};
|
|
1184
1178
|
};
|
|
@@ -1230,7 +1224,7 @@ function createQueueMiddleware$1({
|
|
|
1230
1224
|
|
|
1231
1225
|
var packageJson = {
|
|
1232
1226
|
name: "@commercetools/ts-client",
|
|
1233
|
-
version: "
|
|
1227
|
+
version: "2.0.0",
|
|
1234
1228
|
engines: {
|
|
1235
1229
|
node: ">=14"
|
|
1236
1230
|
},
|
|
@@ -1266,7 +1260,7 @@ var packageJson = {
|
|
|
1266
1260
|
"abort-controller": "3.0.0",
|
|
1267
1261
|
buffer: "^6.0.3",
|
|
1268
1262
|
"node-fetch": "^2.6.1",
|
|
1269
|
-
uuid: "9.0.
|
|
1263
|
+
uuid: "9.0.1"
|
|
1270
1264
|
},
|
|
1271
1265
|
files: [
|
|
1272
1266
|
"dist",
|
|
@@ -1281,15 +1275,16 @@ var packageJson = {
|
|
|
1281
1275
|
},
|
|
1282
1276
|
devDependencies: {
|
|
1283
1277
|
"common-tags": "1.8.2",
|
|
1284
|
-
dotenv: "16.
|
|
1285
|
-
jest: "29.
|
|
1278
|
+
dotenv: "16.4.5",
|
|
1279
|
+
jest: "29.7.0",
|
|
1286
1280
|
nock: "12.0.3",
|
|
1287
1281
|
"organize-imports-cli": "0.10.0"
|
|
1288
1282
|
},
|
|
1289
1283
|
scripts: {
|
|
1290
1284
|
organize_imports: "find src -type f -name '*.ts' | xargs organize-imports-cli",
|
|
1291
1285
|
postbuild: "yarn organize_imports",
|
|
1292
|
-
post_process_generate: "yarn organize_imports"
|
|
1286
|
+
post_process_generate: "yarn organize_imports",
|
|
1287
|
+
docs: "typedoc --out docs"
|
|
1293
1288
|
}
|
|
1294
1289
|
};
|
|
1295
1290
|
|
|
@@ -1297,7 +1292,7 @@ function createUserAgentMiddleware$1(options) {
|
|
|
1297
1292
|
return next => async request => {
|
|
1298
1293
|
const userAgent = createUserAgent({
|
|
1299
1294
|
...options,
|
|
1300
|
-
name:
|
|
1295
|
+
name: `${options.name ? options.name + '/' : ''}commercetools-sdk-javascript-v3/${packageJson.version}`
|
|
1301
1296
|
});
|
|
1302
1297
|
const requestWithUserAgent = {
|
|
1303
1298
|
...request,
|
|
@@ -1319,7 +1314,7 @@ var middleware = /*#__PURE__*/Object.freeze({
|
|
|
1319
1314
|
createAuthMiddlewareForRefreshTokenFlow: createAuthMiddlewareForRefreshTokenFlow$1,
|
|
1320
1315
|
createConcurrentModificationMiddleware: createConcurrentModificationMiddleware$1,
|
|
1321
1316
|
createCorrelationIdMiddleware: createCorrelationIdMiddleware$1,
|
|
1322
|
-
createErrorMiddleware: createErrorMiddleware
|
|
1317
|
+
createErrorMiddleware: createErrorMiddleware,
|
|
1323
1318
|
createHttpMiddleware: createHttpMiddleware$1,
|
|
1324
1319
|
createLoggerMiddleware: createLoggerMiddleware$1,
|
|
1325
1320
|
createQueueMiddleware: createQueueMiddleware$1,
|
|
@@ -1462,7 +1457,13 @@ function createClient(middlewares) {
|
|
|
1462
1457
|
reject,
|
|
1463
1458
|
resolve,
|
|
1464
1459
|
...request
|
|
1465
|
-
}).then(
|
|
1460
|
+
}).then(res => {
|
|
1461
|
+
if (res.error) {
|
|
1462
|
+
reject(res.error);
|
|
1463
|
+
} else {
|
|
1464
|
+
resolve(res);
|
|
1465
|
+
}
|
|
1466
|
+
}).catch(reject);
|
|
1466
1467
|
});
|
|
1467
1468
|
}
|
|
1468
1469
|
};
|
|
@@ -1479,8 +1480,7 @@ const {
|
|
|
1479
1480
|
createLoggerMiddleware,
|
|
1480
1481
|
createQueueMiddleware,
|
|
1481
1482
|
createUserAgentMiddleware,
|
|
1482
|
-
createConcurrentModificationMiddleware
|
|
1483
|
-
createErrorMiddleware
|
|
1483
|
+
createConcurrentModificationMiddleware
|
|
1484
1484
|
} = middleware;
|
|
1485
1485
|
class ClientBuilder {
|
|
1486
1486
|
constructor() {
|
|
@@ -1492,7 +1492,9 @@ class ClientBuilder {
|
|
|
1492
1492
|
_defineProperty(this, "loggerMiddleware", void 0);
|
|
1493
1493
|
_defineProperty(this, "queueMiddleware", void 0);
|
|
1494
1494
|
_defineProperty(this, "concurrentMiddleware", void 0);
|
|
1495
|
-
_defineProperty(this, "
|
|
1495
|
+
_defineProperty(this, "telemetryMiddleware", void 0);
|
|
1496
|
+
_defineProperty(this, "beforeMiddleware", void 0);
|
|
1497
|
+
_defineProperty(this, "afterMiddleware", void 0);
|
|
1496
1498
|
_defineProperty(this, "middlewares", []);
|
|
1497
1499
|
this.userAgentMiddleware = createUserAgentMiddleware({});
|
|
1498
1500
|
}
|
|
@@ -1611,30 +1613,49 @@ class ClientBuilder {
|
|
|
1611
1613
|
});
|
|
1612
1614
|
return this;
|
|
1613
1615
|
}
|
|
1614
|
-
withConcurrentModificationMiddleware() {
|
|
1615
|
-
this.concurrentMiddleware = createConcurrentModificationMiddleware();
|
|
1616
|
+
withConcurrentModificationMiddleware(options) {
|
|
1617
|
+
this.concurrentMiddleware = createConcurrentModificationMiddleware(options?.concurrentModificationHandlerFn);
|
|
1616
1618
|
return this;
|
|
1617
1619
|
}
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
+
withTelemetryMiddleware(options) {
|
|
1621
|
+
const {
|
|
1622
|
+
createTelemetryMiddleware,
|
|
1623
|
+
...rest
|
|
1624
|
+
} = options;
|
|
1625
|
+
this.withUserAgentMiddleware({
|
|
1626
|
+
customAgent: rest?.userAgent || 'typescript-sdk-apm-middleware'
|
|
1627
|
+
});
|
|
1628
|
+
this.telemetryMiddleware = createTelemetryMiddleware(rest);
|
|
1629
|
+
return this;
|
|
1630
|
+
}
|
|
1631
|
+
withBeforeExecutionMiddleware(options) {
|
|
1632
|
+
const {
|
|
1633
|
+
middleware,
|
|
1634
|
+
...rest
|
|
1635
|
+
} = options || {};
|
|
1636
|
+
this.beforeMiddleware = options.middleware(rest);
|
|
1637
|
+
return this;
|
|
1638
|
+
}
|
|
1639
|
+
withAfterExecutionMiddleware(options) {
|
|
1640
|
+
const {
|
|
1641
|
+
middleware,
|
|
1642
|
+
...rest
|
|
1643
|
+
} = options || {};
|
|
1644
|
+
this.afterMiddleware = options.middleware(rest);
|
|
1620
1645
|
return this;
|
|
1621
1646
|
}
|
|
1622
1647
|
build() {
|
|
1623
1648
|
const middlewares = this.middlewares.slice();
|
|
1624
|
-
|
|
1625
|
-
/**
|
|
1626
|
-
* - use default retry policy if not explicity added
|
|
1627
|
-
* - add retry middleware to be used by concurrent modification
|
|
1628
|
-
* middleware if not explicitly added as part of the middleware
|
|
1629
|
-
*/
|
|
1649
|
+
if (this.telemetryMiddleware) middlewares.push(this.telemetryMiddleware);
|
|
1630
1650
|
if (this.correlationIdMiddleware) middlewares.push(this.correlationIdMiddleware);
|
|
1631
1651
|
if (this.userAgentMiddleware) middlewares.push(this.userAgentMiddleware);
|
|
1632
1652
|
if (this.authMiddleware) middlewares.push(this.authMiddleware);
|
|
1653
|
+
if (this.beforeMiddleware) middlewares.push(this.beforeMiddleware);
|
|
1633
1654
|
if (this.queueMiddleware) middlewares.push(this.queueMiddleware);
|
|
1634
1655
|
if (this.loggerMiddleware) middlewares.push(this.loggerMiddleware);
|
|
1635
|
-
if (this.errorMiddleware) middlewares.push(this.errorMiddleware);
|
|
1636
1656
|
if (this.concurrentMiddleware) middlewares.push(this.concurrentMiddleware);
|
|
1637
1657
|
if (this.httpMiddleware) middlewares.push(this.httpMiddleware);
|
|
1658
|
+
if (this.afterMiddleware) middlewares.push(this.afterMiddleware);
|
|
1638
1659
|
return createClient({
|
|
1639
1660
|
middlewares
|
|
1640
1661
|
});
|