UNPKG

@docusign/iam-sdk

Version:

Developer-friendly & type-safe Typescript SDK specifically catered to leverage *@docusign/iam-sdk* API.

77 lines 2.35 kB
"use strict"; /* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.readableStreamToArrayBuffer = readableStreamToArrayBuffer; exports.getContentTypeFromFileName = getContentTypeFromFileName; /** * Consumes a stream and returns a concatenated array buffer. Useful in * situations where we need to read the whole file because it forms part of a * larger payload containing other fields, and we can't modify the underlying * request structure. */ async function readableStreamToArrayBuffer(readable) { const reader = readable.getReader(); const chunks = []; let totalLength = 0; let done = false; while (!done) { const { value, done: doneReading } = await reader.read(); if (doneReading) { done = true; } else { chunks.push(value); totalLength += value.length; } } const concatenatedChunks = new Uint8Array(totalLength); let offset = 0; for (const chunk of chunks) { concatenatedChunks.set(chunk, offset); offset += chunk.length; } return concatenatedChunks.buffer; } /** * Determines the MIME content type based on a file's extension. * Returns null if the extension is not recognized. */ function getContentTypeFromFileName(fileName) { if (!fileName) return null; const ext = fileName.toLowerCase().split(".").pop(); if (!ext) return null; const mimeTypes = { json: "application/json", xml: "application/xml", html: "text/html", htm: "text/html", txt: "text/plain", csv: "text/csv", pdf: "application/pdf", png: "image/png", jpg: "image/jpeg", jpeg: "image/jpeg", gif: "image/gif", svg: "image/svg+xml", js: "application/javascript", css: "text/css", zip: "application/zip", tar: "application/x-tar", gz: "application/gzip", mp4: "video/mp4", mp3: "audio/mpeg", wav: "audio/wav", webp: "image/webp", ico: "image/x-icon", woff: "font/woff", woff2: "font/woff2", ttf: "font/ttf", otf: "font/otf", }; return mimeTypes[ext] || null; } //# sourceMappingURL=files.js.map