conjure-client
Advanced tools
Comparing version 2.9.0 to 2.10.0
@@ -19,2 +19,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.isConjureError = exports.ConjureError = exports.ConjureErrorType = void 0; | ||
var ConjureErrorType; | ||
@@ -21,0 +22,0 @@ (function (ConjureErrorType) { |
@@ -18,7 +18,18 @@ "use strict"; | ||
*/ | ||
function __export(m) { | ||
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; | ||
} | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
var desc = Object.getOwnPropertyDescriptor(m, k); | ||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
desc = { enumerable: true, get: function() { return m[k]; } }; | ||
} | ||
Object.defineProperty(o, k2, desc); | ||
}) : (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
o[k2] = m[k]; | ||
})); | ||
var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
__export(require("./error")); | ||
__exportStar(require("./error"), exports); | ||
//# sourceMappingURL=index.js.map |
@@ -17,2 +17,2 @@ /** | ||
*/ | ||
export declare function blobToReadableStream(blobPromise: Promise<Blob>): ReadableStream<Uint8Array>; | ||
export declare function blobToReadableStream(blobPromise: Promise<Blob>): Promise<ReadableStream<Uint8Array>>; |
@@ -19,2 +19,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.blobToReadableStream = void 0; | ||
var ponyfill_1 = require("web-streams-polyfill/ponyfill"); | ||
@@ -34,7 +35,12 @@ function blobToReadableStream(blobPromise) { | ||
}; | ||
return typeof ReadableStream === "undefined" | ||
? new ponyfill_1.ReadableStream(underlyingSource) | ||
: new ReadableStream(underlyingSource); | ||
if (process.env.MODERN) { | ||
return blobPromise.then(function (blob) { return blob.stream(); }); | ||
} | ||
else { | ||
return Promise.resolve(typeof ReadableStream === "undefined" | ||
? new ponyfill_1.ReadableStream(underlyingSource) | ||
: new ReadableStream(underlyingSource)); | ||
} | ||
} | ||
exports.blobToReadableStream = blobToReadableStream; | ||
//# sourceMappingURL=blobReadableStreamAdapter.js.map |
@@ -30,4 +30,4 @@ /** | ||
} | ||
export declare type FetchFunction = (url: string | Request, init?: RequestInit) => Promise<IFetchResponse>; | ||
export declare type Supplier<T> = () => T; | ||
export type FetchFunction = (url: string | Request, init?: RequestInit) => Promise<IFetchResponse>; | ||
export type Supplier<T> = () => T; | ||
export interface IFetchBridgeParams { | ||
@@ -65,2 +65,3 @@ baseUrl: string | Supplier<string>; | ||
private getMediaType; | ||
private isBinaryMedia; | ||
} |
@@ -30,6 +30,7 @@ "use strict"; | ||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
return new (P || (P = Promise))(function (resolve, reject) { | ||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } | ||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
@@ -44,3 +45,3 @@ }); | ||
if (f) throw new TypeError("Generator is already executing."); | ||
while (_) try { | ||
while (g && (g = 0, op[0] && (_ = 0)), _) try { | ||
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
@@ -67,2 +68,3 @@ if (y = 0, t) op = [op[0] & 2, t.value]; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.FetchBridge = void 0; | ||
var errors_1 = require("../errors"); | ||
@@ -138,3 +140,4 @@ var generated_1 = require("../generated"); | ||
contentType = response.headers.get("Content-Type") != null ? response.headers.get("Content-Type") : ""; | ||
if (contentType.includes(httpApiBridge_1.MediaType.APPLICATION_OCTET_STREAM) && params.binaryAsStream) { | ||
if ((contentType.includes(httpApiBridge_1.MediaType.APPLICATION_OCTET_STREAM) || this.isBinaryMedia(contentType)) && | ||
params.binaryAsStream) { | ||
return [2 /*return*/, this.handleBinaryResponseBody(response)]; | ||
@@ -146,3 +149,3 @@ } | ||
} | ||
else if (contentType.includes(httpApiBridge_1.MediaType.APPLICATION_OCTET_STREAM)) { | ||
else if (contentType.includes(httpApiBridge_1.MediaType.APPLICATION_OCTET_STREAM) || this.isBinaryMedia(contentType)) { | ||
bodyPromise = response.blob(); | ||
@@ -193,3 +196,3 @@ } | ||
query = this.buildQueryString(params.queryArguments); | ||
url = this.getBaseUrl() + "/" + this.buildPath(params) + (query.length > 0 ? "?" + query : ""); | ||
url = "".concat(this.getBaseUrl(), "/").concat(this.buildPath(params)).concat(query.length > 0 ? "?".concat(query) : ""); | ||
data = params.data, _a = params.headers, headers = _a === void 0 ? {} : _a, method = params.method, requestMediaType = params.requestMediaType, responseMediaType = params.responseMediaType; | ||
@@ -215,3 +218,3 @@ stringifiedHeaders = { | ||
if (token !== undefined) { | ||
fetchRequestInit.headers = __assign({}, fetchRequestInit.headers, { Authorization: "Bearer " + token }); | ||
fetchRequestInit.headers = __assign(__assign({}, fetchRequestInit.headers), { Authorization: "Bearer ".concat(token) }); | ||
} | ||
@@ -240,11 +243,16 @@ if (requestMediaType != null && requestMediaType !== httpApiBridge_1.MediaType.MULTIPART_FORM_DATA) { | ||
FetchBridge.prototype.handleBinaryResponseBody = function (response) { | ||
if (response.body === null) { | ||
return blobReadableStreamAdapter_1.blobToReadableStream(response.blob()); | ||
} | ||
else { | ||
return response.body; | ||
} | ||
return __awaiter(this, void 0, void 0, function () { | ||
return __generator(this, function (_a) { | ||
if (response.body === null) { | ||
return [2 /*return*/, (0, blobReadableStreamAdapter_1.blobToReadableStream)(response.blob())]; | ||
} | ||
else { | ||
return [2 /*return*/, response.body]; | ||
} | ||
return [2 /*return*/]; | ||
}); | ||
}); | ||
}; | ||
FetchBridge.prototype.appendQueryParameter = function (query, key, value) { | ||
query.push(encodeURIComponent(key) + "=" + encodeURIComponent(value)); | ||
query.push("".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(value))); | ||
}; | ||
@@ -329,2 +337,10 @@ FetchBridge.prototype.buildPath = function (parameters) { | ||
}; | ||
FetchBridge.prototype.isBinaryMedia = function (contentType) { | ||
return (contentType.includes("image/") || | ||
contentType.includes("audio/") || | ||
contentType.includes("video/") || | ||
contentType.includes("application/pdf") || | ||
contentType.includes("application/dicom") || | ||
contentType.includes("application/vnd.nitf")); | ||
}; | ||
FetchBridge.ACCEPT_HEADER = "accept"; | ||
@@ -331,0 +347,0 @@ return FetchBridge; |
@@ -18,8 +18,19 @@ "use strict"; | ||
*/ | ||
function __export(m) { | ||
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; | ||
} | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
var desc = Object.getOwnPropertyDescriptor(m, k); | ||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
desc = { enumerable: true, get: function() { return m[k]; } }; | ||
} | ||
Object.defineProperty(o, k2, desc); | ||
}) : (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
o[k2] = m[k]; | ||
})); | ||
var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
__export(require("./fetchBridge")); | ||
__export(require("./retryingFetch")); | ||
__exportStar(require("./fetchBridge"), exports); | ||
__exportStar(require("./retryingFetch"), exports); | ||
//# sourceMappingURL=index.js.map |
@@ -23,3 +23,3 @@ /** | ||
*/ | ||
export declare type BackoffStrategy = (attempt: number) => number | undefined; | ||
export type BackoffStrategy = (attempt: number) => number | undefined; | ||
/** | ||
@@ -34,3 +34,3 @@ * Implements "exponential backoff with full jitter", suggesting a backoff duration chosen randomly from the interval | ||
constructor(delegate: FetchFunction, backoffStrategy: BackoffStrategy); | ||
readonly fetch: FetchFunction; | ||
get fetch(): FetchFunction; | ||
private fetchInternal; | ||
@@ -37,0 +37,0 @@ private getRetryAfterHeaderValueInMilliseconds; |
@@ -19,6 +19,7 @@ "use strict"; | ||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
return new (P || (P = Promise))(function (resolve, reject) { | ||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } | ||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
@@ -33,3 +34,3 @@ }); | ||
if (f) throw new TypeError("Generator is already executing."); | ||
while (_) try { | ||
while (g && (g = 0, op[0] && (_ = 0)), _) try { | ||
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
@@ -56,2 +57,3 @@ if (y = 0, t) op = [op[0] & 2, t.value]; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.RetryingFetch = exports.exponentialBackoff = void 0; | ||
/** | ||
@@ -88,3 +90,3 @@ * The maximum value we accept in a Retry-After header. | ||
}, | ||
enumerable: true, | ||
enumerable: false, | ||
configurable: true | ||
@@ -91,0 +93,0 @@ }); |
@@ -1,1 +0,1 @@ | ||
export declare const IMPLEMENTATION_VERSION = "2.9.0"; | ||
export declare const IMPLEMENTATION_VERSION = "2.10.0"; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.IMPLEMENTATION_VERSION = '2.9.0'; | ||
exports.IMPLEMENTATION_VERSION = void 0; | ||
exports.IMPLEMENTATION_VERSION = '2.10.0'; | ||
//# sourceMappingURL=index.js.map |
@@ -19,2 +19,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.MediaType = void 0; | ||
var MediaType; | ||
@@ -21,0 +22,0 @@ (function (MediaType) { |
@@ -18,11 +18,23 @@ "use strict"; | ||
*/ | ||
function __export(m) { | ||
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; | ||
} | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
var desc = Object.getOwnPropertyDescriptor(m, k); | ||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
desc = { enumerable: true, get: function() { return m[k]; } }; | ||
} | ||
Object.defineProperty(o, k2, desc); | ||
}) : (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
o[k2] = m[k]; | ||
})); | ||
var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.DefaultHttpApiBridge = void 0; | ||
var fetchBridge_1 = require("./fetchBridge"); | ||
exports.DefaultHttpApiBridge = fetchBridge_1.FetchBridge; | ||
__export(require("./fetchBridge")); | ||
__export(require("./httpApiBridge")); | ||
__export(require("./errors")); | ||
Object.defineProperty(exports, "DefaultHttpApiBridge", { enumerable: true, get: function () { return fetchBridge_1.FetchBridge; } }); | ||
__exportStar(require("./fetchBridge"), exports); | ||
__exportStar(require("./httpApiBridge"), exports); | ||
__exportStar(require("./errors"), exports); | ||
//# sourceMappingURL=index.js.map |
@@ -18,3 +18,13 @@ "use strict"; | ||
*/ | ||
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { | ||
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { | ||
if (ar || !(i in from)) { | ||
if (!ar) ar = Array.prototype.slice.call(from, 0, i); | ||
ar[i] = from[i]; | ||
} | ||
} | ||
return to.concat(ar || Array.prototype.slice.call(from)); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.UserAgent = void 0; | ||
/** | ||
@@ -26,6 +36,6 @@ * @internal | ||
this.agents = agents; | ||
this.stringValue = this.agents.slice().map(formatUserAgent).join(" "); | ||
this.stringValue = __spreadArray([], this.agents, true).map(formatUserAgent).join(" "); | ||
} | ||
UserAgent.prototype.addAgent = function (agent) { | ||
return new UserAgent(this.agents.concat([agent])); | ||
return new UserAgent(__spreadArray(__spreadArray([], this.agents, true), [agent], false)); | ||
}; | ||
@@ -40,4 +50,4 @@ UserAgent.prototype.toString = function () { | ||
var productName = userAgent.productName, productVersion = userAgent.productVersion; | ||
return productName + "/" + productVersion; | ||
return "".concat(productName, "/").concat(productVersion); | ||
} | ||
//# sourceMappingURL=userAgent.js.map |
{ | ||
"name": "conjure-client", | ||
"version": "2.9.0", | ||
"version": "2.10.0", | ||
"description": "An HTTP bridge library for use in front end applications and generated conjure code", | ||
"sideEffects": false, | ||
"exports": { | ||
"types": "./lib/index.d.ts", | ||
"modern": "./lib-modern/index.js", | ||
"default": "./lib/index.js" | ||
}, | ||
"main": "lib/index.js", | ||
"typings": "lib/index.d.ts", | ||
"scripts": { | ||
"build": "npm-run-all clean lint compile test", | ||
"build": "npm-run-all clean lint prettier compile test", | ||
"circle-publish": "./scripts/circle-publish-npm", | ||
"clean": "rm -rf lib/*", | ||
"precompile": "./scripts/generate-library-version.sh", | ||
"compile": "tsc -p ./src", | ||
"compile": "tsc -p ./src && rollup -c rollup.config.mjs", | ||
"downloadConjureTypeScript": "./scripts/download-conjure-typescript.sh", | ||
@@ -19,9 +24,13 @@ "downloadTestServer": "./scripts/download-test-server.sh", | ||
"lint-fix": "yarn lint --fix", | ||
"prettier": "cd ../.. && prettier --check .", | ||
"prettier-fix": "cd ../.. && prettier --write .", | ||
"test": "yarn downloadConjureTypeScript && yarn downloadTestServer && yarn generateSpecBindings && npm-run-all test:unit test:integration", | ||
"test:integration": "./scripts/run-integration-tests.sh", | ||
"test:unit": "jest --config ./jest.config.js --rootDir ./", | ||
"verify": "npm-run-all -p test lint" | ||
"verify": "npm-run-all -p test lint prettier" | ||
}, | ||
"devDependencies": { | ||
"@blueprintjs/tslint-config": "^1.8.0", | ||
"@rollup/plugin-replace": "5.0.2", | ||
"@rollup/plugin-typescript": "^11.0.0", | ||
"@types/chai": "^4.1.7", | ||
@@ -31,2 +40,3 @@ "@types/express": "^4.16.1", | ||
"@types/jest": "^24.0.23", | ||
"@types/node": "^18.14.6", | ||
"chai": "^4.2.0", | ||
@@ -46,6 +56,8 @@ "es6-shim": "^0.35.5", | ||
"npm-run-all": "^4.1.5", | ||
"prettier": "^2.8.4", | ||
"rollup": "^3.18.0", | ||
"ts-jest": "^24.1.0", | ||
"tslint": "^5.15.0", | ||
"tslint-react": "^3.6.0", | ||
"typescript": "~3.2.0", | ||
"typescript": "^4.9.5", | ||
"whatwg-fetch": "^3.0.0" | ||
@@ -52,0 +64,0 @@ }, |
@@ -20,3 +20,3 @@ /** | ||
export function blobToReadableStream(blobPromise: Promise<Blob>): ReadableStream<Uint8Array> { | ||
export function blobToReadableStream(blobPromise: Promise<Blob>): Promise<ReadableStream<Uint8Array>> { | ||
const underlyingSource = { | ||
@@ -34,5 +34,11 @@ start: (controller: ReadableStreamDefaultController<Uint8Array>) => { | ||
}; | ||
return typeof ReadableStream === "undefined" | ||
? (new PonyfilledReadableStream<Uint8Array>(underlyingSource) as ReadableStream<Uint8Array>) | ||
: new ReadableStream(underlyingSource); | ||
if (process.env.MODERN) { | ||
return blobPromise.then(blob => blob.stream()); | ||
} else { | ||
return Promise.resolve( | ||
typeof ReadableStream === "undefined" | ||
? (new PonyfilledReadableStream<Uint8Array>(underlyingSource) as ReadableStream<Uint8Array>) | ||
: new ReadableStream(underlyingSource), | ||
); | ||
} | ||
} |
@@ -129,3 +129,6 @@ /** | ||
response.headers.get("Content-Type") != null ? (response.headers.get("Content-Type") as string) : ""; | ||
if (contentType.includes(MediaType.APPLICATION_OCTET_STREAM) && params.binaryAsStream) { | ||
if ( | ||
(contentType.includes(MediaType.APPLICATION_OCTET_STREAM) || this.isBinaryMedia(contentType)) && | ||
params.binaryAsStream | ||
) { | ||
return this.handleBinaryResponseBody(response) as any; | ||
@@ -137,3 +140,3 @@ } | ||
bodyPromise = response.json(); | ||
} else if (contentType.includes(MediaType.APPLICATION_OCTET_STREAM)) { | ||
} else if (contentType.includes(MediaType.APPLICATION_OCTET_STREAM) || this.isBinaryMedia(contentType)) { | ||
bodyPromise = response.blob(); | ||
@@ -217,3 +220,3 @@ } else { | ||
private handleBinaryResponseBody(response: IFetchResponse): ReadableStream<Uint8Array> { | ||
private async handleBinaryResponseBody(response: IFetchResponse): Promise<ReadableStream<Uint8Array>> { | ||
if (response.body === null) { | ||
@@ -301,2 +304,13 @@ return blobToReadableStream(response.blob()); | ||
} | ||
private isBinaryMedia(contentType: string): boolean { | ||
return ( | ||
contentType.includes("image/") || | ||
contentType.includes("audio/") || | ||
contentType.includes("video/") || | ||
contentType.includes("application/pdf") || | ||
contentType.includes("application/dicom") || | ||
contentType.includes("application/vnd.nitf") | ||
); | ||
} | ||
} |
@@ -1,1 +0,1 @@ | ||
export const IMPLEMENTATION_VERSION = '2.9.0'; | ||
export const IMPLEMENTATION_VERSION = '2.10.0'; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
96008
45
1837
29
1