mirror of
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools.git
synced 2026-08-16 14:49:59 +00:00
KI
KJ
This commit is contained in:
106
unified-ai-platform/node_modules/fetch-blob/README.md
generated
vendored
Normal file
106
unified-ai-platform/node_modules/fetch-blob/README.md
generated
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
# fetch-blob
|
||||
|
||||
[![npm version][npm-image]][npm-url]
|
||||
[![build status][ci-image]][ci-url]
|
||||
[![coverage status][codecov-image]][codecov-url]
|
||||
[![install size][install-size-image]][install-size-url]
|
||||
|
||||
A Blob implementation in Node.js, originally from [node-fetch](https://github.com/node-fetch/node-fetch).
|
||||
|
||||
## Installation
|
||||
|
||||
```sh
|
||||
npm install fetch-blob
|
||||
```
|
||||
|
||||
<details>
|
||||
<summary>Upgrading from 2x to 3x</summary>
|
||||
|
||||
Updating from 2 to 3 should be a breeze since there is not many changes to the blob specification.
|
||||
The major cause of a major release is coding standards.
|
||||
- internal WeakMaps was replaced with private fields
|
||||
- internal Buffer.from was replaced with TextEncoder/Decoder
|
||||
- internal buffers was replaced with Uint8Arrays
|
||||
- CommonJS was replaced with ESM
|
||||
- The node stream returned by calling `blob.stream()` was replaced with whatwg streams
|
||||
- (Read "Differences from other blobs" for more info.)
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Differences from other Blobs</summary>
|
||||
|
||||
- Unlike NodeJS `buffer.Blob` (Added in: v15.7.0) and browser native Blob this polyfilled version can't be sent via PostMessage
|
||||
- This blob version is more arbitrary, it can be constructed with blob parts that isn't a instance of itself
|
||||
it has to look and behave as a blob to be accepted as a blob part.
|
||||
- The benefit of this is that you can create other types of blobs that don't contain any internal data that has to be read in other ways, such as the `BlobDataItem` created in `from.js` that wraps a file path into a blob-like item and read lazily (nodejs plans to [implement this][fs-blobs] as well)
|
||||
- The `blob.stream()` is the most noticeable differences. It returns a WHATWG stream now. to keep it as a node stream you would have to do:
|
||||
|
||||
```js
|
||||
import {Readable} from 'stream'
|
||||
const stream = Readable.from(blob.stream())
|
||||
```
|
||||
</details>
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
// Ways to import
|
||||
// (PS it's dependency free ESM package so regular http-import from CDN works too)
|
||||
import Blob from 'fetch-blob'
|
||||
import File from 'fetch-blob/file.js'
|
||||
|
||||
import {Blob} from 'fetch-blob'
|
||||
import {File} from 'fetch-blob/file.js'
|
||||
|
||||
const {Blob} = await import('fetch-blob')
|
||||
|
||||
|
||||
// Ways to read the blob:
|
||||
const blob = new Blob(['hello, world'])
|
||||
|
||||
await blob.text()
|
||||
await blob.arrayBuffer()
|
||||
for await (let chunk of blob.stream()) { ... }
|
||||
blob.stream().getReader().read()
|
||||
blob.stream().getReader({mode: 'byob'}).read(view)
|
||||
```
|
||||
|
||||
### Blob part backed up by filesystem
|
||||
|
||||
`fetch-blob/from.js` comes packed with tools to convert any filepath into either a Blob or a File
|
||||
It will not read the content into memory. It will only stat the file for last modified date and file size.
|
||||
|
||||
```js
|
||||
// The default export is sync and use fs.stat to retrieve size & last modified as a blob
|
||||
import blobFromSync from 'fetch-blob/from.js'
|
||||
import {File, Blob, blobFrom, blobFromSync, fileFrom, fileFromSync} from 'fetch-blob/from.js'
|
||||
|
||||
const fsFile = fileFromSync('./2-GiB-file.bin', 'application/octet-stream')
|
||||
const fsBlob = await blobFrom('./2-GiB-file.mp4')
|
||||
|
||||
// Not a 4 GiB memory snapshot, just holds references
|
||||
// points to where data is located on the disk
|
||||
const blob = new Blob([fsFile, fsBlob, 'memory', new Uint8Array(10)])
|
||||
console.log(blob.size) // ~4 GiB
|
||||
```
|
||||
|
||||
`blobFrom|blobFromSync|fileFrom|fileFromSync(path, [mimetype])`
|
||||
|
||||
### Creating Blobs backed up by other async sources
|
||||
Our Blob & File class are more generic then any other polyfills in the way that it can accept any blob look-a-like item
|
||||
An example of this is that our blob implementation can be constructed with parts coming from [BlobDataItem](https://github.com/node-fetch/fetch-blob/blob/8ef89adad40d255a3bbd55cf38b88597c1cd5480/from.js#L32) (aka a filepath) or from [buffer.Blob](https://nodejs.org/api/buffer.html#buffer_new_buffer_blob_sources_options), It dose not have to implement all the methods - just enough that it can be read/understood by our Blob implementation. The minium requirements is that it has `Symbol.toStringTag`, `size`, `slice()` and either a `stream()` or a `arrayBuffer()` method. If you then wrap it in our Blob or File `new Blob([blobDataItem])` then you get all of the other methods that should be implemented in a blob or file
|
||||
|
||||
An example of this could be to create a file or blob like item coming from a remote HTTP request. Or from a DataBase
|
||||
|
||||
See the [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/API/Blob) and [tests](https://github.com/node-fetch/fetch-blob/blob/master/test.js) for more details of how to use the Blob.
|
||||
|
||||
[npm-image]: https://flat.badgen.net/npm/v/fetch-blob
|
||||
[npm-url]: https://www.npmjs.com/package/fetch-blob
|
||||
[ci-image]: https://github.com/node-fetch/fetch-blob/workflows/CI/badge.svg
|
||||
[ci-url]: https://github.com/node-fetch/fetch-blob/actions
|
||||
[codecov-image]: https://flat.badgen.net/codecov/c/github/node-fetch/fetch-blob/master
|
||||
[codecov-url]: https://codecov.io/gh/node-fetch/fetch-blob
|
||||
[install-size-image]: https://flat.badgen.net/packagephobia/install/fetch-blob
|
||||
[install-size-url]: https://packagephobia.now.sh/result?p=fetch-blob
|
||||
[fs-blobs]: https://github.com/nodejs/node/issues/37340
|
||||
2
unified-ai-platform/node_modules/fetch-blob/file.d.ts
generated
vendored
Normal file
2
unified-ai-platform/node_modules/fetch-blob/file.d.ts
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
/** @type {typeof globalThis.File} */ export const File: typeof globalThis.File;
|
||||
export default File;
|
||||
26
unified-ai-platform/node_modules/fetch-blob/from.d.ts
generated
vendored
Normal file
26
unified-ai-platform/node_modules/fetch-blob/from.d.ts
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
export default blobFromSync;
|
||||
/**
|
||||
* @param {string} path filepath on the disk
|
||||
* @param {string} [type] mimetype to use
|
||||
*/
|
||||
export function blobFromSync(path: string, type?: string): Blob;
|
||||
import File from "./file.js";
|
||||
import Blob from "./index.js";
|
||||
/**
|
||||
* @param {string} path filepath on the disk
|
||||
* @param {string} [type] mimetype to use
|
||||
* @returns {Promise<Blob>}
|
||||
*/
|
||||
export function blobFrom(path: string, type?: string): Promise<Blob>;
|
||||
/**
|
||||
* @param {string} path filepath on the disk
|
||||
* @param {string} [type] mimetype to use
|
||||
* @returns {Promise<File>}
|
||||
*/
|
||||
export function fileFrom(path: string, type?: string): Promise<File>;
|
||||
/**
|
||||
* @param {string} path filepath on the disk
|
||||
* @param {string} [type] mimetype to use
|
||||
*/
|
||||
export function fileFromSync(path: string, type?: string): File;
|
||||
export { File, Blob };
|
||||
3
unified-ai-platform/node_modules/fetch-blob/index.d.ts
generated
vendored
Normal file
3
unified-ai-platform/node_modules/fetch-blob/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
/** @type {typeof globalThis.Blob} */
|
||||
export const Blob: typeof globalThis.Blob;
|
||||
export default Blob;
|
||||
250
unified-ai-platform/node_modules/fetch-blob/index.js
generated
vendored
Normal file
250
unified-ai-platform/node_modules/fetch-blob/index.js
generated
vendored
Normal file
@@ -0,0 +1,250 @@
|
||||
/*! fetch-blob. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
// TODO (jimmywarting): in the feature use conditional loading with top level await (requires 14.x)
|
||||
// Node has recently added whatwg stream into core
|
||||
|
||||
import './streams.cjs'
|
||||
|
||||
// 64 KiB (same size chrome slice theirs blob into Uint8array's)
|
||||
const POOL_SIZE = 65536
|
||||
|
||||
/** @param {(Blob | Uint8Array)[]} parts */
|
||||
async function * toIterator (parts, clone = true) {
|
||||
for (const part of parts) {
|
||||
if ('stream' in part) {
|
||||
yield * (/** @type {AsyncIterableIterator<Uint8Array>} */ (part.stream()))
|
||||
} else if (ArrayBuffer.isView(part)) {
|
||||
if (clone) {
|
||||
let position = part.byteOffset
|
||||
const end = part.byteOffset + part.byteLength
|
||||
while (position !== end) {
|
||||
const size = Math.min(end - position, POOL_SIZE)
|
||||
const chunk = part.buffer.slice(position, position + size)
|
||||
position += chunk.byteLength
|
||||
yield new Uint8Array(chunk)
|
||||
}
|
||||
} else {
|
||||
yield part
|
||||
}
|
||||
/* c8 ignore next 10 */
|
||||
} else {
|
||||
// For blobs that have arrayBuffer but no stream method (nodes buffer.Blob)
|
||||
let position = 0, b = (/** @type {Blob} */ (part))
|
||||
while (position !== b.size) {
|
||||
const chunk = b.slice(position, Math.min(b.size, position + POOL_SIZE))
|
||||
const buffer = await chunk.arrayBuffer()
|
||||
position += buffer.byteLength
|
||||
yield new Uint8Array(buffer)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const _Blob = class Blob {
|
||||
/** @type {Array.<(Blob|Uint8Array)>} */
|
||||
#parts = []
|
||||
#type = ''
|
||||
#size = 0
|
||||
#endings = 'transparent'
|
||||
|
||||
/**
|
||||
* The Blob() constructor returns a new Blob object. The content
|
||||
* of the blob consists of the concatenation of the values given
|
||||
* in the parameter array.
|
||||
*
|
||||
* @param {*} blobParts
|
||||
* @param {{ type?: string, endings?: string }} [options]
|
||||
*/
|
||||
constructor (blobParts = [], options = {}) {
|
||||
if (typeof blobParts !== 'object' || blobParts === null) {
|
||||
throw new TypeError('Failed to construct \'Blob\': The provided value cannot be converted to a sequence.')
|
||||
}
|
||||
|
||||
if (typeof blobParts[Symbol.iterator] !== 'function') {
|
||||
throw new TypeError('Failed to construct \'Blob\': The object must have a callable @@iterator property.')
|
||||
}
|
||||
|
||||
if (typeof options !== 'object' && typeof options !== 'function') {
|
||||
throw new TypeError('Failed to construct \'Blob\': parameter 2 cannot convert to dictionary.')
|
||||
}
|
||||
|
||||
if (options === null) options = {}
|
||||
|
||||
const encoder = new TextEncoder()
|
||||
for (const element of blobParts) {
|
||||
let part
|
||||
if (ArrayBuffer.isView(element)) {
|
||||
part = new Uint8Array(element.buffer.slice(element.byteOffset, element.byteOffset + element.byteLength))
|
||||
} else if (element instanceof ArrayBuffer) {
|
||||
part = new Uint8Array(element.slice(0))
|
||||
} else if (element instanceof Blob) {
|
||||
part = element
|
||||
} else {
|
||||
part = encoder.encode(`${element}`)
|
||||
}
|
||||
|
||||
this.#size += ArrayBuffer.isView(part) ? part.byteLength : part.size
|
||||
this.#parts.push(part)
|
||||
}
|
||||
|
||||
this.#endings = `${options.endings === undefined ? 'transparent' : options.endings}`
|
||||
const type = options.type === undefined ? '' : String(options.type)
|
||||
this.#type = /^[\x20-\x7E]*$/.test(type) ? type : ''
|
||||
}
|
||||
|
||||
/**
|
||||
* The Blob interface's size property returns the
|
||||
* size of the Blob in bytes.
|
||||
*/
|
||||
get size () {
|
||||
return this.#size
|
||||
}
|
||||
|
||||
/**
|
||||
* The type property of a Blob object returns the MIME type of the file.
|
||||
*/
|
||||
get type () {
|
||||
return this.#type
|
||||
}
|
||||
|
||||
/**
|
||||
* The text() method in the Blob interface returns a Promise
|
||||
* that resolves with a string containing the contents of
|
||||
* the blob, interpreted as UTF-8.
|
||||
*
|
||||
* @return {Promise<string>}
|
||||
*/
|
||||
async text () {
|
||||
// More optimized than using this.arrayBuffer()
|
||||
// that requires twice as much ram
|
||||
const decoder = new TextDecoder()
|
||||
let str = ''
|
||||
for await (const part of toIterator(this.#parts, false)) {
|
||||
str += decoder.decode(part, { stream: true })
|
||||
}
|
||||
// Remaining
|
||||
str += decoder.decode()
|
||||
return str
|
||||
}
|
||||
|
||||
/**
|
||||
* The arrayBuffer() method in the Blob interface returns a
|
||||
* Promise that resolves with the contents of the blob as
|
||||
* binary data contained in an ArrayBuffer.
|
||||
*
|
||||
* @return {Promise<ArrayBuffer>}
|
||||
*/
|
||||
async arrayBuffer () {
|
||||
// Easier way... Just a unnecessary overhead
|
||||
// const view = new Uint8Array(this.size);
|
||||
// await this.stream().getReader({mode: 'byob'}).read(view);
|
||||
// return view.buffer;
|
||||
|
||||
const data = new Uint8Array(this.size)
|
||||
let offset = 0
|
||||
for await (const chunk of toIterator(this.#parts, false)) {
|
||||
data.set(chunk, offset)
|
||||
offset += chunk.length
|
||||
}
|
||||
|
||||
return data.buffer
|
||||
}
|
||||
|
||||
stream () {
|
||||
const it = toIterator(this.#parts, true)
|
||||
|
||||
return new globalThis.ReadableStream({
|
||||
// @ts-ignore
|
||||
type: 'bytes',
|
||||
async pull (ctrl) {
|
||||
const chunk = await it.next()
|
||||
chunk.done ? ctrl.close() : ctrl.enqueue(chunk.value)
|
||||
},
|
||||
|
||||
async cancel () {
|
||||
await it.return()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* The Blob interface's slice() method creates and returns a
|
||||
* new Blob object which contains data from a subset of the
|
||||
* blob on which it's called.
|
||||
*
|
||||
* @param {number} [start]
|
||||
* @param {number} [end]
|
||||
* @param {string} [type]
|
||||
*/
|
||||
slice (start = 0, end = this.size, type = '') {
|
||||
const { size } = this
|
||||
|
||||
let relativeStart = start < 0 ? Math.max(size + start, 0) : Math.min(start, size)
|
||||
let relativeEnd = end < 0 ? Math.max(size + end, 0) : Math.min(end, size)
|
||||
|
||||
const span = Math.max(relativeEnd - relativeStart, 0)
|
||||
const parts = this.#parts
|
||||
const blobParts = []
|
||||
let added = 0
|
||||
|
||||
for (const part of parts) {
|
||||
// don't add the overflow to new blobParts
|
||||
if (added >= span) {
|
||||
break
|
||||
}
|
||||
|
||||
const size = ArrayBuffer.isView(part) ? part.byteLength : part.size
|
||||
if (relativeStart && size <= relativeStart) {
|
||||
// Skip the beginning and change the relative
|
||||
// start & end position as we skip the unwanted parts
|
||||
relativeStart -= size
|
||||
relativeEnd -= size
|
||||
} else {
|
||||
let chunk
|
||||
if (ArrayBuffer.isView(part)) {
|
||||
chunk = part.subarray(relativeStart, Math.min(size, relativeEnd))
|
||||
added += chunk.byteLength
|
||||
} else {
|
||||
chunk = part.slice(relativeStart, Math.min(size, relativeEnd))
|
||||
added += chunk.size
|
||||
}
|
||||
relativeEnd -= size
|
||||
blobParts.push(chunk)
|
||||
relativeStart = 0 // All next sequential parts should start at 0
|
||||
}
|
||||
}
|
||||
|
||||
const blob = new Blob([], { type: String(type).toLowerCase() })
|
||||
blob.#size = span
|
||||
blob.#parts = blobParts
|
||||
|
||||
return blob
|
||||
}
|
||||
|
||||
get [Symbol.toStringTag] () {
|
||||
return 'Blob'
|
||||
}
|
||||
|
||||
static [Symbol.hasInstance] (object) {
|
||||
return (
|
||||
object &&
|
||||
typeof object === 'object' &&
|
||||
typeof object.constructor === 'function' &&
|
||||
(
|
||||
typeof object.stream === 'function' ||
|
||||
typeof object.arrayBuffer === 'function'
|
||||
) &&
|
||||
/^(Blob|File)$/.test(object[Symbol.toStringTag])
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
Object.defineProperties(_Blob.prototype, {
|
||||
size: { enumerable: true },
|
||||
type: { enumerable: true },
|
||||
slice: { enumerable: true }
|
||||
})
|
||||
|
||||
/** @type {typeof globalThis.Blob} */
|
||||
export const Blob = _Blob
|
||||
export default Blob
|
||||
2
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527203617.md
generated
vendored
Normal file
2
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527203617.md
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# node-domexception
|
||||
An implementation of the DOMException class from NodeJS
|
||||
41
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527212714.md
generated
vendored
Normal file
41
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527212714.md
generated
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
This package implements the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class, from NodeJS itself.
|
||||
NodeJS has DOMException built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws an error and catch the constructor.
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.
|
||||
The instanceof check would not have worked with a custom class such as the DOMexception provided by domenic which also is much larger in size.
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
|
||||
hello().catch(err => {
|
||||
if (err instanceof DOMException) {
|
||||
...
|
||||
}
|
||||
})
|
||||
|
||||
const e1 = new DOMException("Something went wrong", "BadThingsError");
|
||||
console.assert(e1.name === "BadThingsError");
|
||||
console.assert(e1.code === 0);
|
||||
|
||||
const e2 = new DOMException("Another exciting error message", "NoModificationAllowedError");
|
||||
console.assert(e2.name === "NoModificationAllowedError");
|
||||
console.assert(e2.code === 7);
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10);
|
||||
```
|
||||
|
||||
## APIs
|
||||
|
||||
This package exposes two flavors of the `DOMException` interface depending on the imported module.
|
||||
|
||||
### `domexception` module
|
||||
|
||||
This module default-exports the `DOMException` interface constructor.
|
||||
|
||||
### `domexception/webidl2js-wrapper` module
|
||||
|
||||
This module exports the `DOMException` [interface wrapper API](https://github.com/jsdom/webidl2js#for-interfaces) generated by [webidl2js](https://github.com/jsdom/webidl2js).
|
||||
36
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527213345.md
generated
vendored
Normal file
36
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527213345.md
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
This package implements the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class, from NodeJS itself. (including the legacy codes)
|
||||
NodeJS has DOMException built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws an error and catch the constructor.
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.
|
||||
The instanceof check would not have worked with a custom class such as the DOMException provided by domenic which also is much larger in size.
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
import { MessageChannel } from 'worker_threads'
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
```
|
||||
36
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527213411.md
generated
vendored
Normal file
36
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527213411.md
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
This package implements the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class that comes from NodeJS itself. (including the legacy codes)
|
||||
NodeJS has DOMException built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws an error and catch the constructor.
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.
|
||||
The instanceof check would not have worked with a custom class such as the DOMException provided by domenic which also is much larger in size.
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
import { MessageChannel } from 'worker_threads'
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
```
|
||||
36
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527213803.md
generated
vendored
Normal file
36
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527213803.md
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
This package exposes the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class that comes from NodeJS itself. (including all of the deprecated legacy codes)
|
||||
NodeJS has it built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws an error and catch the constructor.
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.
|
||||
The instanceof check would not have worked with a custom class such as the DOMException provided by domenic which also is much larger in size since it has to re-construct the hole class from the ground up.
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
import { MessageChannel } from 'worker_threads'
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
```
|
||||
38
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527214323.md
generated
vendored
Normal file
38
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527214323.md
generated
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
This package exposes the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class that comes from NodeJS itself. (including all of the deprecated legacy codes)
|
||||
NodeJS has it built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws an error and catch the constructor.
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.
|
||||
The instanceof check would not have worked with a custom class such as the DOMException provided by domenic which also is much larger in size since it has to re-construct the hole class from the ground up.
|
||||
|
||||
(plz don't depend on this package in any other environment other than node >=10.5)
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
import { MessageChannel } from 'worker_threads'
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
```
|
||||
38
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527214408.md
generated
vendored
Normal file
38
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/README_20210527214408.md
generated
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
This package exposes the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class that comes from NodeJS itself. (including all of the deprecated legacy codes)
|
||||
NodeJS has it built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws an error and catch the constructor.
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.
|
||||
The instanceof check would not have worked with a custom class such as the DOMException provided by domenic which also is much larger in size since it has to re-construct the hole class from the ground up.
|
||||
|
||||
(plz don't depend on this package in any other environment other than node >=10.5)
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
import { MessageChannel } from 'worker_threads'
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
```
|
||||
0
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527203842.js
generated
vendored
Normal file
0
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527203842.js
generated
vendored
Normal file
8
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527203947.js
generated
vendored
Normal file
8
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527203947.js
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) { globalThis.DOMException = err.constructor }
|
||||
}
|
||||
9
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204259.js
generated
vendored
Normal file
9
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204259.js
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) { globalThis.DOMException = err.constructor }
|
||||
}
|
||||
|
||||
module.exports
|
||||
9
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204418.js
generated
vendored
Normal file
9
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204418.js
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) { globalThis.DOMException = err.constructor }
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
11
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204756.js
generated
vendored
Normal file
11
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204756.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) { globalThis.DOMException = err.constructor }
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
11
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204833.js
generated
vendored
Normal file
11
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527204833.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) { globalThis.DOMException = err.constructor }
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
15
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527211208.js
generated
vendored
Normal file
15
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527211208.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
var { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
15
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527211248.js
generated
vendored
Normal file
15
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527211248.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
23
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212722.js
generated
vendored
Normal file
23
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212722.js
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
|
||||
const e1 = new DOMException("Something went wrong", "BadThingsError");
|
||||
console.assert(e1.name === "BadThingsError");
|
||||
console.assert(e1.code === 0);
|
||||
|
||||
const e2 = new DOMException("Another exciting error message", "NoModificationAllowedError");
|
||||
console.assert(e2.name === "NoModificationAllowedError");
|
||||
console.assert(e2.code === 7);
|
||||
23
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212731.js
generated
vendored
Normal file
23
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212731.js
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
|
||||
const e1 = new DOMException("Something went wrong", "BadThingsError");
|
||||
console.assert(e1.name === "BadThingsError");
|
||||
console.assert(e1.code === 0);
|
||||
|
||||
const e2 = new DOMException("Another exciting error message", "NoModificationAllowedError");
|
||||
console.assert(e2.name === "NoModificationAllowedError");
|
||||
console.assert(e2.code === 2);
|
||||
15
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212746.js
generated
vendored
Normal file
15
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212746.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212900.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527212900.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
console.log(err.code)
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213022.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213022.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! blob-to-buffer. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
console.log(err.code, err.name, err.message)
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213822.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213822.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! node-DOMException. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
try { port.postMessage(ab, [ab, ab]) }
|
||||
catch (err) {
|
||||
console.log(err.code, err.name, err.message)
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
17
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213843.js
generated
vendored
Normal file
17
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213843.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
/*! node-DOMException. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
catch (err) {
|
||||
console.log(err.code, err.name, err.message)
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
17
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213852.js
generated
vendored
Normal file
17
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213852.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
/*! node-DOMException. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
console.log(err.code, err.name, err.message)
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213910.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527213910.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! node-DOMException. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214034.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214034.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
41
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214643.js
generated
vendored
Normal file
41
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214643.js
generated
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
/*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
|
||||
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
41
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214654.js
generated
vendored
Normal file
41
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214654.js
generated
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
/*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
|
||||
|
||||
const { MessageChannel } = require('worker_threads')
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 21)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214700.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/index_20210527214700.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
19
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527203733.json
generated
vendored
Normal file
19
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527203733.json
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme"
|
||||
}
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527203825.json
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527203825.json
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme"
|
||||
}
|
||||
19
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527204621.json
generated
vendored
Normal file
19
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527204621.json
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme"
|
||||
}
|
||||
25
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527204913.json
generated
vendored
Normal file
25
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527204913.json
generated
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/jimmywarting"
|
||||
}
|
||||
]
|
||||
}
|
||||
25
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527204925.json
generated
vendored
Normal file
25
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527204925.json
generated
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/jimmywarting"
|
||||
}
|
||||
]
|
||||
}
|
||||
29
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527205145.json
generated
vendored
Normal file
29
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527205145.json
generated
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/jimmywarting"
|
||||
},
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://paypal.me/jimmywarting"
|
||||
}
|
||||
]
|
||||
}
|
||||
29
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527205156.json
generated
vendored
Normal file
29
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/package_20210527205156.json
generated
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/jimmywarting"
|
||||
},
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://paypal.me/jimmywarting"
|
||||
}
|
||||
]
|
||||
}
|
||||
0
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/test_20210527205603.js
generated
vendored
Normal file
0
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/test_20210527205603.js
generated
vendored
Normal file
3
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/test_20210527205957.js
generated
vendored
Normal file
3
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/test_20210527205957.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
require('./index.js')
|
||||
|
||||
console.log(DOMException.INDEX_SIZE_ERR)
|
||||
3
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/test_20210527210021.js
generated
vendored
Normal file
3
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/.history/test_20210527210021.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
const e = require('./index.js')
|
||||
|
||||
console.log(e.INDEX_SIZE_ERR)
|
||||
21
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/LICENSE
generated
vendored
Normal file
21
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2021 Jimmy Wärting
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
46
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/README.md
generated
vendored
Normal file
46
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/README.md
generated
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
# DOMException
|
||||
An implementation of the DOMException class from NodeJS
|
||||
|
||||
NodeJS has DOMException built in, but it's not globally available, and you can't require/import it from somewhere.
|
||||
|
||||
This package exposes the [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException) class that comes from NodeJS itself. (including all of the legacy codes)
|
||||
|
||||
<sub>(plz don't depend on this package in any other environment other than node >=10.5)</sub>
|
||||
|
||||
```js
|
||||
import DOMException from 'node-domexception'
|
||||
import { MessageChannel } from 'worker_threads'
|
||||
|
||||
async function hello() {
|
||||
const port = new MessageChannel().port1
|
||||
const ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
}
|
||||
|
||||
hello().catch(err => {
|
||||
console.assert(err.name === 'DataCloneError')
|
||||
console.assert(err.code === 25)
|
||||
console.assert(err instanceof DOMException)
|
||||
})
|
||||
|
||||
const e1 = new DOMException('Something went wrong', 'BadThingsError')
|
||||
console.assert(e1.name === 'BadThingsError')
|
||||
console.assert(e1.code === 0)
|
||||
|
||||
const e2 = new DOMException('Another exciting error message', 'NoModificationAllowedError')
|
||||
console.assert(e2.name === 'NoModificationAllowedError')
|
||||
console.assert(e2.code === 7)
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10)
|
||||
```
|
||||
|
||||
# Background
|
||||
|
||||
The only possible way is to use some web-ish tools that have been introduced into NodeJS that throws a DOMException and catch the constructor. This is exactly what this package dose for you and exposes it.<br>
|
||||
This way you will have the same class that NodeJS has and you can check if the error is a instance of DOMException.<br>
|
||||
The instanceof check would not have worked with a custom class such as the DOMException provided by domenic which also is much larger in size since it has to re-construct the hole class from the ground up.
|
||||
|
||||
The DOMException is used in many places such as the Fetch API, File & Blobs, PostMessaging and more. <br>
|
||||
Why they decided to call it **DOM**, I don't know
|
||||
|
||||
Please consider sponsoring if you find this helpful
|
||||
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/index.js
generated
vendored
Normal file
16
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/index.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
/*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
|
||||
|
||||
if (!globalThis.DOMException) {
|
||||
try {
|
||||
const { MessageChannel } = require('worker_threads'),
|
||||
port = new MessageChannel().port1,
|
||||
ab = new ArrayBuffer()
|
||||
port.postMessage(ab, [ab, ab])
|
||||
} catch (err) {
|
||||
err.constructor.name === 'DOMException' && (
|
||||
globalThis.DOMException = err.constructor
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = globalThis.DOMException
|
||||
29
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/package.json
generated
vendored
Normal file
29
unified-ai-platform/node_modules/fetch-blob/node_modules/node-domexception/package.json
generated
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"name": "node-domexception",
|
||||
"version": "1.0.0",
|
||||
"description": "An implementation of the DOMException class from NodeJS",
|
||||
"main": "index.js",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/jimmywarting/node-domexception.git"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0"
|
||||
},
|
||||
"author": "Jimmy Wärting",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/jimmywarting/node-domexception/issues"
|
||||
},
|
||||
"homepage": "https://github.com/jimmywarting/node-domexception#readme",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/jimmywarting"
|
||||
},
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://paypal.me/jimmywarting"
|
||||
}
|
||||
]
|
||||
}
|
||||
22
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/LICENSE
generated
vendored
Normal file
22
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2024 Mattias Buelens
|
||||
Copyright (c) 2016 Diwank Singh Tomer
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
110
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/README.md
generated
vendored
Normal file
110
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/README.md
generated
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
# web-streams-polyfill
|
||||
|
||||
Web Streams, based on the WHATWG spec reference implementation.
|
||||
|
||||
[](https://travis-ci.com/MattiasBuelens/web-streams-polyfill)
|
||||
[](https://www.npmjs.com/package/web-streams-polyfill)
|
||||
[](https://github.com/MattiasBuelens/web-streams-polyfill/blob/master/LICENSE)
|
||||
|
||||
## Links
|
||||
|
||||
- [Official spec][spec]
|
||||
- [Reference implementation][ref-impl]
|
||||
|
||||
## Usage
|
||||
|
||||
This library comes in multiple variants:
|
||||
* `web-streams-polyfill`: a polyfill that replaces the native stream implementations.
|
||||
Recommended for use in web apps supporting older browsers through a `<script>` tag.
|
||||
* `web-streams-polyfill/es6`: a polyfill targeting ES2015+ environments.
|
||||
Recommended for use in web apps supporting modern browsers through a `<script>` tag.
|
||||
* `web-streams-polyfill/es2018`: a polyfill targeting ES2018+ environments.
|
||||
* `web-streams-polyfill/ponyfill`: a [ponyfill] that provides
|
||||
the stream implementations without replacing any globals.
|
||||
Recommended for use in legacy Node applications, or in web libraries supporting older browsers.
|
||||
* `web-streams-polyfill/ponyfill/es6`: a ponyfill targeting ES2015+ environments.
|
||||
Recommended for use in Node 6+ applications, or in web libraries supporting modern browsers.
|
||||
* `web-streams-polyfill/ponyfill/es2018`: a ponyfill targeting ES2018+ environments.
|
||||
Recommended for use in Node 10+ applications.
|
||||
|
||||
Each variant also includes TypeScript type definitions, compatible with the DOM type definitions for streams included in TypeScript.
|
||||
|
||||
Usage as a polyfill:
|
||||
```html
|
||||
<!-- option 1: hosted by unpkg CDN -->
|
||||
<script src="https://unpkg.com/web-streams-polyfill/dist/polyfill.min.js"></script>
|
||||
<!-- option 2: self hosted -->
|
||||
<script src="/path/to/web-streams-polyfill/dist/polyfill.min.js"></script>
|
||||
<script>
|
||||
var readable = new ReadableStream();
|
||||
</script>
|
||||
```
|
||||
Usage as a Node module:
|
||||
```js
|
||||
var streams = require("web-streams-polyfill/ponyfill");
|
||||
var readable = new streams.ReadableStream();
|
||||
```
|
||||
Usage as a ES2015 module:
|
||||
```js
|
||||
import { ReadableStream } from "web-streams-polyfill/ponyfill";
|
||||
const readable = new ReadableStream();
|
||||
```
|
||||
|
||||
## Compatibility
|
||||
|
||||
The `polyfill` and `ponyfill` variants work in any ES5-compatible environment that has a global `Promise`.
|
||||
If you need to support older browsers or Node versions that do not have a native `Promise` implementation
|
||||
(check the [support table][promise-support]), you must first include a `Promise` polyfill
|
||||
(e.g. [promise-polyfill][promise-polyfill]).
|
||||
|
||||
The `polyfill/es6` and `ponyfill/es6` variants work in any ES2015-compatible environment.
|
||||
|
||||
The `polyfill/es2018` and `ponyfill/es2018` variants work in any ES2018-compatible environment.
|
||||
|
||||
[Async iterable support for `ReadableStream`][rs-asynciterator] is available in all variants, but requires an ES2018-compatible environment or a polyfill for `Symbol.asyncIterator`.
|
||||
|
||||
[`WritableStreamDefaultController.signal`][ws-controller-signal] is available in all variants, but requires a global `AbortController` constructor. If necessary, consider using a polyfill such as [abortcontroller-polyfill].
|
||||
|
||||
[Reading with a BYOB reader][mdn-byob-read] is available in all variants, but requires `ArrayBuffer.prototype.transfer()` or `structuredClone()` to exist in order to correctly transfer the given view's buffer. If not available, then the buffer won't be transferred during the read.
|
||||
|
||||
## Compliance
|
||||
|
||||
The polyfill implements [version `4dc123a` (13 Nov 2023)][spec-snapshot] of the streams specification.
|
||||
|
||||
The polyfill is tested against the same [web platform tests][wpt] that are used by browsers to test their native implementations.
|
||||
The polyfill aims to pass all tests, although it allows some exceptions for practical reasons:
|
||||
* The `es2018` variant passes all of the tests.
|
||||
* The `es6` variant passes the same tests as the `es2018` variant, except for the [test for the prototype of `ReadableStream`'s async iterator][wpt-async-iterator-prototype].
|
||||
Retrieving the correct `%AsyncIteratorPrototype%` requires using an async generator (`async function* () {}`), which is invalid syntax before ES2018.
|
||||
Instead, the polyfill [creates its own version][stub-async-iterator-prototype] which is functionally equivalent to the real prototype.
|
||||
* The `es5` variant passes the same tests as the `es6` variant, except for various tests about specific characteristics of the constructors, properties and methods.
|
||||
These test failures do not affect the run-time behavior of the polyfill.
|
||||
For example:
|
||||
* The `name` property of down-leveled constructors is incorrect.
|
||||
* The `length` property of down-leveled constructors and methods with optional arguments is incorrect.
|
||||
* Not all properties and methods are correctly marked as non-enumerable.
|
||||
* Down-leveled class methods are not correctly marked as non-constructable.
|
||||
|
||||
The type definitions are compatible with the built-in stream types of TypeScript 3.3.
|
||||
|
||||
## Contributors
|
||||
|
||||
Thanks to these people for their work on [the original polyfill][creatorrr-polyfill]:
|
||||
|
||||
- Diwank Singh Tomer ([creatorrr](https://github.com/creatorrr))
|
||||
- Anders Riutta ([ariutta](https://github.com/ariutta))
|
||||
|
||||
[spec]: https://streams.spec.whatwg.org
|
||||
[ref-impl]: https://github.com/whatwg/streams
|
||||
[ponyfill]: https://github.com/sindresorhus/ponyfill
|
||||
[promise-support]: https://kangax.github.io/compat-table/es6/#test-Promise
|
||||
[promise-polyfill]: https://www.npmjs.com/package/promise-polyfill
|
||||
[rs-asynciterator]: https://streams.spec.whatwg.org/#rs-asynciterator
|
||||
[ws-controller-signal]: https://streams.spec.whatwg.org/#ws-default-controller-signal
|
||||
[abortcontroller-polyfill]: https://www.npmjs.com/package/abortcontroller-polyfill
|
||||
[mdn-byob-read]: https://developer.mozilla.org/en-US/docs/Web/API/ReadableStreamBYOBReader/read
|
||||
[spec-snapshot]: https://streams.spec.whatwg.org/commit-snapshots/4dc123a6e7f7ba89a8c6a7975b021156f39cab52/
|
||||
[wpt]: https://github.com/web-platform-tests/wpt/tree/2a298b616b7c865917d7198a287310881cbfdd8d/streams
|
||||
[wpt-async-iterator-prototype]: https://github.com/web-platform-tests/wpt/blob/2a298b616b7c865917d7198a287310881cbfdd8d/streams/readable-streams/async-iterator.any.js#L24
|
||||
[stub-async-iterator-prototype]: https://github.com/MattiasBuelens/web-streams-polyfill/blob/v2.0.0/src/target/es5/stub/async-iterator-prototype.ts
|
||||
[creatorrr-polyfill]: https://github.com/creatorrr/web-streams-polyfill
|
||||
4765
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.js
generated
vendored
Normal file
4765
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
9
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js
generated
vendored
Normal file
9
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4745
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs
generated
vendored
Normal file
4745
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4838
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.js
generated
vendored
Normal file
4838
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
9
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js
generated
vendored
Normal file
9
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4818
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs
generated
vendored
Normal file
4818
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
5011
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.js
generated
vendored
Normal file
5011
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
9
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.min.js
generated
vendored
Normal file
9
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.min.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.min.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4991
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.mjs
generated
vendored
Normal file
4991
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.mjs.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/polyfill.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4737
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js
generated
vendored
Normal file
4737
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4717
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs
generated
vendored
Normal file
4717
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4810
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.js
generated
vendored
Normal file
4810
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4790
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs
generated
vendored
Normal file
4790
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4983
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.js
generated
vendored
Normal file
4983
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.js.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4963
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.mjs
generated
vendored
Normal file
4963
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.mjs.map
generated
vendored
Normal file
1
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/ponyfill.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
24
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/polyfill.d.ts
generated
vendored
Normal file
24
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/polyfill.d.ts
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
/// <reference lib="dom" />
|
||||
/// <reference lib="esnext.asynciterable" />
|
||||
import { ReadableStreamAsyncIterator, ReadableStreamIteratorOptions } from './ponyfill';
|
||||
export * from './ponyfill';
|
||||
declare global {
|
||||
interface ReadableStream<R = any> extends AsyncIterable<R> {
|
||||
/**
|
||||
* Asynchronously iterates over the chunks in the stream's internal queue.
|
||||
*
|
||||
* Asynchronously iterating over the stream will lock it, preventing any other consumer from acquiring a reader.
|
||||
* The lock will be released if the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method
|
||||
* is called, e.g. by breaking out of the loop.
|
||||
*
|
||||
* By default, calling the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method will also
|
||||
* cancel the stream. To prevent this, use the stream's {@link ReadableStream.values | values()} method, passing
|
||||
* `true` for the `preventCancel` option.
|
||||
*/
|
||||
values(options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
/**
|
||||
* {@inheritDoc ReadableStream.values}
|
||||
*/
|
||||
[Symbol.asyncIterator](options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
}
|
||||
}
|
||||
780
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/ponyfill.d.ts
generated
vendored
Normal file
780
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/ponyfill.d.ts
generated
vendored
Normal file
@@ -0,0 +1,780 @@
|
||||
/// <reference lib="esnext.asynciterable" />
|
||||
/**
|
||||
* A signal object that allows you to communicate with a request and abort it if required
|
||||
* via its associated `AbortController` object.
|
||||
*
|
||||
* @remarks
|
||||
* This interface is compatible with the `AbortSignal` interface defined in TypeScript's DOM types.
|
||||
* It is redefined here, so it can be polyfilled without a DOM, for example with
|
||||
* {@link https://www.npmjs.com/package/abortcontroller-polyfill | abortcontroller-polyfill} in a Node environment.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface AbortSignal {
|
||||
/**
|
||||
* Whether the request is aborted.
|
||||
*/
|
||||
readonly aborted: boolean;
|
||||
/**
|
||||
* If aborted, returns the reason for aborting.
|
||||
*/
|
||||
readonly reason?: any;
|
||||
/**
|
||||
* Add an event listener to be triggered when this signal becomes aborted.
|
||||
*/
|
||||
addEventListener(type: 'abort', listener: () => void): void;
|
||||
/**
|
||||
* Remove an event listener that was previously added with {@link AbortSignal.addEventListener}.
|
||||
*/
|
||||
removeEventListener(type: 'abort', listener: () => void): void;
|
||||
}
|
||||
/**
|
||||
* A queuing strategy that counts the number of bytes in each chunk.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ByteLengthQueuingStrategy implements QueuingStrategy<ArrayBufferView> {
|
||||
constructor(options: QueuingStrategyInit);
|
||||
/*
|
||||
* Returns the high water mark provided to the constructor.
|
||||
*/
|
||||
readonly highWaterMark: number;
|
||||
/*
|
||||
* Measures the size of `chunk` by returning the value of its `byteLength` property.
|
||||
*/
|
||||
readonly size: (chunk: ArrayBufferView) => number;
|
||||
}
|
||||
/**
|
||||
* A queuing strategy that counts the number of chunks.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class CountQueuingStrategy implements QueuingStrategy<any> {
|
||||
constructor(options: QueuingStrategyInit);
|
||||
/*
|
||||
* Returns the high water mark provided to the constructor.
|
||||
*/
|
||||
readonly highWaterMark: number;
|
||||
/*
|
||||
* Measures the size of `chunk` by always returning 1.
|
||||
* This ensures that the total queue size is a count of the number of chunks in the queue.
|
||||
*/
|
||||
readonly size: (chunk: any) => 1;
|
||||
}
|
||||
/**
|
||||
* A queuing strategy.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface QueuingStrategy<T = any> {
|
||||
/**
|
||||
* A non-negative number indicating the high water mark of the stream using this queuing strategy.
|
||||
*/
|
||||
highWaterMark?: number;
|
||||
/**
|
||||
* A function that computes and returns the finite non-negative size of the given chunk value.
|
||||
*/
|
||||
size?: QueuingStrategySizeCallback<T>;
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare interface QueuingStrategyInit {
|
||||
/**
|
||||
* {@inheritDoc QueuingStrategy.highWaterMark}
|
||||
*/
|
||||
highWaterMark: number;
|
||||
}
|
||||
/**
|
||||
* {@inheritDoc QueuingStrategy.size}
|
||||
* @public
|
||||
*/
|
||||
export declare type QueuingStrategySizeCallback<T = any> = (chunk: T) => number;
|
||||
/**
|
||||
* Allows control of a {@link ReadableStream | readable byte stream}'s state and internal queue.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableByteStreamController {
|
||||
private constructor();
|
||||
/*
|
||||
* Returns the current BYOB pull request, or `null` if there isn't one.
|
||||
*/
|
||||
readonly byobRequest: ReadableStreamBYOBRequest | null;
|
||||
/*
|
||||
* Returns the desired size to fill the controlled stream's internal queue. It can be negative, if the queue is
|
||||
* over-full. An underlying byte source ought to use this information to determine when and how to apply backpressure.
|
||||
*/
|
||||
readonly desiredSize: number | null;
|
||||
/**
|
||||
* Closes the controlled readable stream. Consumers will still be able to read any previously-enqueued chunks from
|
||||
* the stream, but once those are read, the stream will become closed.
|
||||
*/
|
||||
close(): void;
|
||||
/**
|
||||
* Enqueues the given chunk chunk in the controlled readable stream.
|
||||
* The chunk has to be an `ArrayBufferView` instance, or else a `TypeError` will be thrown.
|
||||
*/
|
||||
enqueue(chunk: ArrayBufferView): void;
|
||||
/**
|
||||
* Errors the controlled readable stream, making all future interactions with it fail with the given error `e`.
|
||||
*/
|
||||
error(e?: any): void;
|
||||
}
|
||||
/**
|
||||
* A readable stream represents a source of data, from which you can read.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStream<R = any> implements AsyncIterable<R> {
|
||||
constructor(underlyingSource: UnderlyingByteSource, strategy?: {
|
||||
highWaterMark?: number;
|
||||
size?: undefined;
|
||||
});
|
||||
constructor(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>);
|
||||
/*
|
||||
* Whether or not the readable stream is locked to a {@link ReadableStreamDefaultReader | reader}.
|
||||
*/
|
||||
readonly locked: boolean;
|
||||
/**
|
||||
* Cancels the stream, signaling a loss of interest in the stream by a consumer.
|
||||
*
|
||||
* The supplied `reason` argument will be given to the underlying source's {@link UnderlyingSource.cancel | cancel()}
|
||||
* method, which might or might not use it.
|
||||
*/
|
||||
cancel(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Creates a {@link ReadableStreamBYOBReader} and locks the stream to the new reader.
|
||||
*
|
||||
* This call behaves the same way as the no-argument variant, except that it only works on readable byte streams,
|
||||
* i.e. streams which were constructed specifically with the ability to handle "bring your own buffer" reading.
|
||||
* The returned BYOB reader provides the ability to directly read individual chunks from the stream via its
|
||||
* {@link ReadableStreamBYOBReader.read | read()} method, into developer-supplied buffers, allowing more precise
|
||||
* control over allocation.
|
||||
*/
|
||||
getReader({ mode }: {
|
||||
mode: 'byob';
|
||||
}): ReadableStreamBYOBReader;
|
||||
/**
|
||||
* Creates a {@link ReadableStreamDefaultReader} and locks the stream to the new reader.
|
||||
* While the stream is locked, no other reader can be acquired until this one is released.
|
||||
*
|
||||
* This functionality is especially useful for creating abstractions that desire the ability to consume a stream
|
||||
* in its entirety. By getting a reader for the stream, you can ensure nobody else can interleave reads with yours
|
||||
* or cancel the stream, which would interfere with your abstraction.
|
||||
*/
|
||||
getReader(): ReadableStreamDefaultReader<R>;
|
||||
/**
|
||||
* Provides a convenient, chainable way of piping this readable stream through a transform stream
|
||||
* (or any other `{ writable, readable }` pair). It simply {@link ReadableStream.pipeTo | pipes} the stream
|
||||
* into the writable side of the supplied pair, and returns the readable side for further use.
|
||||
*
|
||||
* Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
|
||||
*/
|
||||
pipeThrough<RS extends ReadableStream>(transform: {
|
||||
readable: RS;
|
||||
writable: WritableStream<R>;
|
||||
}, options?: StreamPipeOptions): RS;
|
||||
/**
|
||||
* Pipes this readable stream to a given writable stream. The way in which the piping process behaves under
|
||||
* various error conditions can be customized with a number of passed options. It returns a promise that fulfills
|
||||
* when the piping process completes successfully, or rejects if any errors were encountered.
|
||||
*
|
||||
* Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
|
||||
*/
|
||||
pipeTo(destination: WritableStream<R>, options?: StreamPipeOptions): Promise<void>;
|
||||
/**
|
||||
* Tees this readable stream, returning a two-element array containing the two resulting branches as
|
||||
* new {@link ReadableStream} instances.
|
||||
*
|
||||
* Teeing a stream will lock it, preventing any other consumer from acquiring a reader.
|
||||
* To cancel the stream, cancel both of the resulting branches; a composite cancellation reason will then be
|
||||
* propagated to the stream's underlying source.
|
||||
*
|
||||
* Note that the chunks seen in each branch will be the same object. If the chunks are not immutable,
|
||||
* this could allow interference between the two branches.
|
||||
*/
|
||||
tee(): [
|
||||
ReadableStream<R>,
|
||||
ReadableStream<R>
|
||||
];
|
||||
/**
|
||||
* Asynchronously iterates over the chunks in the stream's internal queue.
|
||||
*
|
||||
* Asynchronously iterating over the stream will lock it, preventing any other consumer from acquiring a reader.
|
||||
* The lock will be released if the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method
|
||||
* is called, e.g. by breaking out of the loop.
|
||||
*
|
||||
* By default, calling the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method will also
|
||||
* cancel the stream. To prevent this, use the stream's {@link ReadableStream.values | values()} method, passing
|
||||
* `true` for the `preventCancel` option.
|
||||
*/
|
||||
values(options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
/**
|
||||
* {@inheritDoc ReadableStream.values}
|
||||
*/
|
||||
[Symbol.asyncIterator](options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
/**
|
||||
* Creates a new ReadableStream wrapping the provided iterable or async iterable.
|
||||
*
|
||||
* This can be used to adapt various kinds of objects into a readable stream,
|
||||
* such as an array, an async generator, or a Node.js readable stream.
|
||||
*/
|
||||
static from<R>(asyncIterable: Iterable<R> | AsyncIterable<R> | ReadableStreamLike<R>): ReadableStream<R>;
|
||||
}
|
||||
/**
|
||||
* An async iterator returned by {@link ReadableStream.values}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamAsyncIterator<R> extends AsyncIterableIterator<R> {
|
||||
next(): Promise<IteratorResult<R>>;
|
||||
return(value?: any): Promise<IteratorResult<any>>;
|
||||
}
|
||||
/**
|
||||
* A BYOB reader vended by a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamBYOBReader {
|
||||
constructor(stream: ReadableStream<Uint8Array>);
|
||||
/*
|
||||
* Returns a promise that will be fulfilled when the stream becomes closed, or rejected if the stream ever errors or
|
||||
* the reader's lock is released before the stream finishes closing.
|
||||
*/
|
||||
readonly closed: Promise<undefined>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link ReadableStream.cancel | stream.cancel(reason)}.
|
||||
*/
|
||||
cancel(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Attempts to reads bytes into view, and returns a promise resolved with the result.
|
||||
*
|
||||
* If reading a chunk causes the queue to become empty, more data will be pulled from the underlying source.
|
||||
*/
|
||||
read<T extends ArrayBufferView>(view: T, options?: ReadableStreamBYOBReaderReadOptions): Promise<ReadableStreamBYOBReadResult<T>>;
|
||||
/**
|
||||
* Releases the reader's lock on the corresponding stream. After the lock is released, the reader is no longer active.
|
||||
* If the associated stream is errored when the lock is released, the reader will appear errored in the same way
|
||||
* from now on; otherwise, the reader will appear closed.
|
||||
*
|
||||
* A reader's lock cannot be released while it still has a pending read request, i.e., if a promise returned by
|
||||
* the reader's {@link ReadableStreamBYOBReader.read | read()} method has not yet been settled. Attempting to
|
||||
* do so will throw a `TypeError` and leave the reader locked to the stream.
|
||||
*/
|
||||
releaseLock(): void;
|
||||
}
|
||||
/**
|
||||
* Options for {@link ReadableStreamBYOBReader.read | reading} a stream
|
||||
* with a {@link ReadableStreamBYOBReader | BYOB reader}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamBYOBReaderReadOptions {
|
||||
min?: number;
|
||||
}
|
||||
/**
|
||||
* A result returned by {@link ReadableStreamBYOBReader.read}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare type ReadableStreamBYOBReadResult<T extends ArrayBufferView> = {
|
||||
done: false;
|
||||
value: T;
|
||||
} | {
|
||||
done: true;
|
||||
value: T | undefined;
|
||||
};
|
||||
/**
|
||||
* A pull-into request in a {@link ReadableByteStreamController}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamBYOBRequest {
|
||||
private constructor();
|
||||
/*
|
||||
* Returns the view for writing in to, or `null` if the BYOB request has already been responded to.
|
||||
*/
|
||||
readonly view: ArrayBufferView | null;
|
||||
/**
|
||||
* Indicates to the associated readable byte stream that `bytesWritten` bytes were written into
|
||||
* {@link ReadableStreamBYOBRequest.view | view}, causing the result be surfaced to the consumer.
|
||||
*
|
||||
* After this method is called, {@link ReadableStreamBYOBRequest.view | view} will be transferred and no longer
|
||||
* modifiable.
|
||||
*/
|
||||
respond(bytesWritten: number): void;
|
||||
/**
|
||||
* Indicates to the associated readable byte stream that instead of writing into
|
||||
* {@link ReadableStreamBYOBRequest.view | view}, the underlying byte source is providing a new `ArrayBufferView`,
|
||||
* which will be given to the consumer of the readable byte stream.
|
||||
*
|
||||
* After this method is called, `view` will be transferred and no longer modifiable.
|
||||
*/
|
||||
respondWithNewView(view: ArrayBufferView): void;
|
||||
}
|
||||
/**
|
||||
* Allows control of a {@link ReadableStream | readable stream}'s state and internal queue.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamDefaultController<R> {
|
||||
private constructor();
|
||||
/*
|
||||
* Returns the desired size to fill the controlled stream's internal queue. It can be negative, if the queue is
|
||||
* over-full. An underlying source ought to use this information to determine when and how to apply backpressure.
|
||||
*/
|
||||
readonly desiredSize: number | null;
|
||||
/**
|
||||
* Closes the controlled readable stream. Consumers will still be able to read any previously-enqueued chunks from
|
||||
* the stream, but once those are read, the stream will become closed.
|
||||
*/
|
||||
close(): void;
|
||||
/**
|
||||
* Enqueues the given chunk `chunk` in the controlled readable stream.
|
||||
*/
|
||||
enqueue(chunk: R): void;
|
||||
/**
|
||||
* Errors the controlled readable stream, making all future interactions with it fail with the given error `e`.
|
||||
*/
|
||||
error(e?: any): void;
|
||||
}
|
||||
/**
|
||||
* A default reader vended by a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamDefaultReader<R = any> {
|
||||
constructor(stream: ReadableStream<R>);
|
||||
/*
|
||||
* Returns a promise that will be fulfilled when the stream becomes closed,
|
||||
* or rejected if the stream ever errors or the reader's lock is released before the stream finishes closing.
|
||||
*/
|
||||
readonly closed: Promise<undefined>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link ReadableStream.cancel | stream.cancel(reason)}.
|
||||
*/
|
||||
cancel(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Returns a promise that allows access to the next chunk from the stream's internal queue, if available.
|
||||
*
|
||||
* If reading a chunk causes the queue to become empty, more data will be pulled from the underlying source.
|
||||
*/
|
||||
read(): Promise<ReadableStreamDefaultReadResult<R>>;
|
||||
/**
|
||||
* Releases the reader's lock on the corresponding stream. After the lock is released, the reader is no longer active.
|
||||
* If the associated stream is errored when the lock is released, the reader will appear errored in the same way
|
||||
* from now on; otherwise, the reader will appear closed.
|
||||
*
|
||||
* A reader's lock cannot be released while it still has a pending read request, i.e., if a promise returned by
|
||||
* the reader's {@link ReadableStreamDefaultReader.read | read()} method has not yet been settled. Attempting to
|
||||
* do so will throw a `TypeError` and leave the reader locked to the stream.
|
||||
*/
|
||||
releaseLock(): void;
|
||||
}
|
||||
/**
|
||||
* A common interface for a `ReadableStreamDefaultReader` implementation.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamDefaultReaderLike<R = any> {
|
||||
readonly closed: Promise<undefined>;
|
||||
cancel(reason?: any): Promise<void>;
|
||||
read(): Promise<ReadableStreamDefaultReadResult<R>>;
|
||||
releaseLock(): void;
|
||||
}
|
||||
/**
|
||||
* A result returned by {@link ReadableStreamDefaultReader.read}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare type ReadableStreamDefaultReadResult<T> = {
|
||||
done: false;
|
||||
value: T;
|
||||
} | {
|
||||
done: true;
|
||||
value?: undefined;
|
||||
};
|
||||
/**
|
||||
* Options for {@link ReadableStream.values | async iterating} a stream.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamIteratorOptions {
|
||||
preventCancel?: boolean;
|
||||
}
|
||||
/**
|
||||
* A common interface for a `ReadadableStream` implementation.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamLike<R = any> {
|
||||
readonly locked: boolean;
|
||||
getReader(): ReadableStreamDefaultReaderLike<R>;
|
||||
}
|
||||
/**
|
||||
* A pair of a {@link ReadableStream | readable stream} and {@link WritableStream | writable stream} that can be passed
|
||||
* to {@link ReadableStream.pipeThrough}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableWritablePair<R, W> {
|
||||
readable: ReadableStream<R>;
|
||||
writable: WritableStream<W>;
|
||||
}
|
||||
/**
|
||||
* Options for {@link ReadableStream.pipeTo | piping} a stream.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface StreamPipeOptions {
|
||||
/**
|
||||
* If set to true, {@link ReadableStream.pipeTo} will not abort the writable stream if the readable stream errors.
|
||||
*/
|
||||
preventAbort?: boolean;
|
||||
/**
|
||||
* If set to true, {@link ReadableStream.pipeTo} will not cancel the readable stream if the writable stream closes
|
||||
* or errors.
|
||||
*/
|
||||
preventCancel?: boolean;
|
||||
/**
|
||||
* If set to true, {@link ReadableStream.pipeTo} will not close the writable stream if the readable stream closes.
|
||||
*/
|
||||
preventClose?: boolean;
|
||||
/**
|
||||
* Can be set to an {@link AbortSignal} to allow aborting an ongoing pipe operation via the corresponding
|
||||
* `AbortController`. In this case, the source readable stream will be canceled, and the destination writable stream
|
||||
* aborted, unless the respective options `preventCancel` or `preventAbort` are set.
|
||||
*/
|
||||
signal?: AbortSignal;
|
||||
}
|
||||
/**
|
||||
* A transformer for constructing a {@link TransformStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface Transformer<I = any, O = any> {
|
||||
/**
|
||||
* A function that is called immediately during creation of the {@link TransformStream}.
|
||||
*/
|
||||
start?: TransformerStartCallback<O>;
|
||||
/**
|
||||
* A function called when a new chunk originally written to the writable side is ready to be transformed.
|
||||
*/
|
||||
transform?: TransformerTransformCallback<I, O>;
|
||||
/**
|
||||
* A function called after all chunks written to the writable side have been transformed by successfully passing
|
||||
* through {@link Transformer.transform | transform()}, and the writable side is about to be closed.
|
||||
*/
|
||||
flush?: TransformerFlushCallback<O>;
|
||||
/**
|
||||
* A function called when the readable side is cancelled, or when the writable side is aborted.
|
||||
*/
|
||||
cancel?: TransformerCancelCallback;
|
||||
readableType?: undefined;
|
||||
writableType?: undefined;
|
||||
}
|
||||
/** @public */
|
||||
export declare type TransformerCancelCallback = (reason: any) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type TransformerFlushCallback<O> = (controller: TransformStreamDefaultController<O>) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type TransformerStartCallback<O> = (controller: TransformStreamDefaultController<O>) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type TransformerTransformCallback<I, O> = (chunk: I, controller: TransformStreamDefaultController<O>) => void | PromiseLike<void>;
|
||||
/**
|
||||
* A transform stream consists of a pair of streams: a {@link WritableStream | writable stream},
|
||||
* known as its writable side, and a {@link ReadableStream | readable stream}, known as its readable side.
|
||||
* In a manner specific to the transform stream in question, writes to the writable side result in new data being
|
||||
* made available for reading from the readable side.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class TransformStream<I = any, O = any> {
|
||||
constructor(transformer?: Transformer<I, O>, writableStrategy?: QueuingStrategy<I>, readableStrategy?: QueuingStrategy<O>);
|
||||
/*
|
||||
* The readable side of the transform stream.
|
||||
*/
|
||||
readonly readable: ReadableStream<O>;
|
||||
/*
|
||||
* The writable side of the transform stream.
|
||||
*/
|
||||
readonly writable: WritableStream<I>;
|
||||
}
|
||||
/**
|
||||
* Allows control of the {@link ReadableStream} and {@link WritableStream} of the associated {@link TransformStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class TransformStreamDefaultController<O> {
|
||||
private constructor();
|
||||
/*
|
||||
* Returns the desired size to fill the readable side’s internal queue. It can be negative, if the queue is over-full.
|
||||
*/
|
||||
readonly desiredSize: number | null;
|
||||
/**
|
||||
* Enqueues the given chunk `chunk` in the readable side of the controlled transform stream.
|
||||
*/
|
||||
enqueue(chunk: O): void;
|
||||
/**
|
||||
* Errors both the readable side and the writable side of the controlled transform stream, making all future
|
||||
* interactions with it fail with the given error `e`. Any chunks queued for transformation will be discarded.
|
||||
*/
|
||||
error(reason?: any): void;
|
||||
/**
|
||||
* Closes the readable side and errors the writable side of the controlled transform stream. This is useful when the
|
||||
* transformer only needs to consume a portion of the chunks written to the writable side.
|
||||
*/
|
||||
terminate(): void;
|
||||
}
|
||||
/**
|
||||
* An underlying byte source for constructing a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface UnderlyingByteSource {
|
||||
/**
|
||||
* {@inheritDoc UnderlyingSource.start}
|
||||
*/
|
||||
start?: UnderlyingByteSourceStartCallback;
|
||||
/**
|
||||
* {@inheritDoc UnderlyingSource.pull}
|
||||
*/
|
||||
pull?: UnderlyingByteSourcePullCallback;
|
||||
/**
|
||||
* {@inheritDoc UnderlyingSource.cancel}
|
||||
*/
|
||||
cancel?: UnderlyingSourceCancelCallback;
|
||||
/**
|
||||
* Can be set to "bytes" to signal that the constructed {@link ReadableStream} is a readable byte stream.
|
||||
* This ensures that the resulting {@link ReadableStream} will successfully be able to vend BYOB readers via its
|
||||
* {@link ReadableStream.(getReader:1) | getReader()} method.
|
||||
* It also affects the controller argument passed to the {@link UnderlyingByteSource.start | start()}
|
||||
* and {@link UnderlyingByteSource.pull | pull()} methods.
|
||||
*/
|
||||
type: 'bytes';
|
||||
/**
|
||||
* Can be set to a positive integer to cause the implementation to automatically allocate buffers for the
|
||||
* underlying source code to write into. In this case, when a consumer is using a default reader, the stream
|
||||
* implementation will automatically allocate an ArrayBuffer of the given size, so that
|
||||
* {@link ReadableByteStreamController.byobRequest | controller.byobRequest} is always present,
|
||||
* as if the consumer was using a BYOB reader.
|
||||
*/
|
||||
autoAllocateChunkSize?: number;
|
||||
}
|
||||
/** @public */
|
||||
export declare type UnderlyingByteSourcePullCallback = (controller: ReadableByteStreamController) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type UnderlyingByteSourceStartCallback = (controller: ReadableByteStreamController) => void | PromiseLike<void>;
|
||||
/**
|
||||
* An underlying sink for constructing a {@link WritableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface UnderlyingSink<W = any> {
|
||||
/**
|
||||
* A function that is called immediately during creation of the {@link WritableStream}.
|
||||
*/
|
||||
start?: UnderlyingSinkStartCallback;
|
||||
/**
|
||||
* A function that is called when a new chunk of data is ready to be written to the underlying sink. The stream
|
||||
* implementation guarantees that this function will be called only after previous writes have succeeded, and never
|
||||
* before {@link UnderlyingSink.start | start()} has succeeded or after {@link UnderlyingSink.close | close()} or
|
||||
* {@link UnderlyingSink.abort | abort()} have been called.
|
||||
*
|
||||
* This function is used to actually send the data to the resource presented by the underlying sink, for example by
|
||||
* calling a lower-level API.
|
||||
*/
|
||||
write?: UnderlyingSinkWriteCallback<W>;
|
||||
/**
|
||||
* A function that is called after the producer signals, via
|
||||
* {@link WritableStreamDefaultWriter.close | writer.close()}, that they are done writing chunks to the stream, and
|
||||
* subsequently all queued-up writes have successfully completed.
|
||||
*
|
||||
* This function can perform any actions necessary to finalize or flush writes to the underlying sink, and release
|
||||
* access to any held resources.
|
||||
*/
|
||||
close?: UnderlyingSinkCloseCallback;
|
||||
/**
|
||||
* A function that is called after the producer signals, via {@link WritableStream.abort | stream.abort()} or
|
||||
* {@link WritableStreamDefaultWriter.abort | writer.abort()}, that they wish to abort the stream. It takes as its
|
||||
* argument the same value as was passed to those methods by the producer.
|
||||
*
|
||||
* Writable streams can additionally be aborted under certain conditions during piping; see the definition of the
|
||||
* {@link ReadableStream.pipeTo | pipeTo()} method for more details.
|
||||
*
|
||||
* This function can clean up any held resources, much like {@link UnderlyingSink.close | close()}, but perhaps with
|
||||
* some custom handling.
|
||||
*/
|
||||
abort?: UnderlyingSinkAbortCallback;
|
||||
type?: undefined;
|
||||
}
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkAbortCallback = (reason: any) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkCloseCallback = () => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkStartCallback = (controller: WritableStreamDefaultController) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkWriteCallback<W> = (chunk: W, controller: WritableStreamDefaultController) => void | PromiseLike<void>;
|
||||
/**
|
||||
* An underlying source for constructing a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface UnderlyingSource<R = any> {
|
||||
/**
|
||||
* A function that is called immediately during creation of the {@link ReadableStream}.
|
||||
*/
|
||||
start?: UnderlyingSourceStartCallback<R>;
|
||||
/**
|
||||
* A function that is called whenever the stream’s internal queue of chunks becomes not full,
|
||||
* i.e. whenever the queue’s desired size becomes positive. Generally, it will be called repeatedly
|
||||
* until the queue reaches its high water mark (i.e. until the desired size becomes non-positive).
|
||||
*/
|
||||
pull?: UnderlyingSourcePullCallback<R>;
|
||||
/**
|
||||
* A function that is called whenever the consumer cancels the stream, via
|
||||
* {@link ReadableStream.cancel | stream.cancel()},
|
||||
* {@link ReadableStreamDefaultReader.cancel | defaultReader.cancel()}, or
|
||||
* {@link ReadableStreamBYOBReader.cancel | byobReader.cancel()}.
|
||||
* It takes as its argument the same value as was passed to those methods by the consumer.
|
||||
*/
|
||||
cancel?: UnderlyingSourceCancelCallback;
|
||||
type?: undefined;
|
||||
}
|
||||
/** @public */
|
||||
export declare type UnderlyingSourceCancelCallback = (reason: any) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type UnderlyingSourcePullCallback<R> = (controller: ReadableStreamDefaultController<R>) => void | PromiseLike<void>;
|
||||
/** @public */
|
||||
export declare type UnderlyingSourceStartCallback<R> = (controller: ReadableStreamDefaultController<R>) => void | PromiseLike<void>;
|
||||
/**
|
||||
* A writable stream represents a destination for data, into which you can write.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class WritableStream<W = any> {
|
||||
constructor(underlyingSink?: UnderlyingSink<W>, strategy?: QueuingStrategy<W>);
|
||||
/*
|
||||
* Returns whether or not the writable stream is locked to a writer.
|
||||
*/
|
||||
readonly locked: boolean;
|
||||
/**
|
||||
* Aborts the stream, signaling that the producer can no longer successfully write to the stream and it is to be
|
||||
* immediately moved to an errored state, with any queued-up writes discarded. This will also execute any abort
|
||||
* mechanism of the underlying sink.
|
||||
*
|
||||
* The returned promise will fulfill if the stream shuts down successfully, or reject if the underlying sink signaled
|
||||
* that there was an error doing so. Additionally, it will reject with a `TypeError` (without attempting to cancel
|
||||
* the stream) if the stream is currently locked.
|
||||
*/
|
||||
abort(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Closes the stream. The underlying sink will finish processing any previously-written chunks, before invoking its
|
||||
* close behavior. During this time any further attempts to write will fail (without erroring the stream).
|
||||
*
|
||||
* The method returns a promise that will fulfill if all remaining chunks are successfully written and the stream
|
||||
* successfully closes, or rejects if an error is encountered during this process. Additionally, it will reject with
|
||||
* a `TypeError` (without attempting to cancel the stream) if the stream is currently locked.
|
||||
*/
|
||||
close(): Promise<undefined>;
|
||||
/**
|
||||
* Creates a {@link WritableStreamDefaultWriter | writer} and locks the stream to the new writer. While the stream
|
||||
* is locked, no other writer can be acquired until this one is released.
|
||||
*
|
||||
* This functionality is especially useful for creating abstractions that desire the ability to write to a stream
|
||||
* without interruption or interleaving. By getting a writer for the stream, you can ensure nobody else can write at
|
||||
* the same time, which would cause the resulting written data to be unpredictable and probably useless.
|
||||
*/
|
||||
getWriter(): WritableStreamDefaultWriter<W>;
|
||||
}
|
||||
/**
|
||||
* Allows control of a {@link WritableStream | writable stream}'s state and internal queue.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class WritableStreamDefaultController<W = any> {
|
||||
private constructor();
|
||||
/*
|
||||
* The reason which was passed to `WritableStream.abort(reason)` when the stream was aborted.
|
||||
*
|
||||
* @deprecated
|
||||
* This property has been removed from the specification, see https://github.com/whatwg/streams/pull/1177.
|
||||
* Use {@link WritableStreamDefaultController.signal}'s `reason` instead.
|
||||
*/
|
||||
readonly abortReason: any;
|
||||
/*
|
||||
* An `AbortSignal` that can be used to abort the pending write or close operation when the stream is aborted.
|
||||
*/
|
||||
readonly signal: AbortSignal;
|
||||
/**
|
||||
* Closes the controlled writable stream, making all future interactions with it fail with the given error `e`.
|
||||
*
|
||||
* This method is rarely used, since usually it suffices to return a rejected promise from one of the underlying
|
||||
* sink's methods. However, it can be useful for suddenly shutting down a stream in response to an event outside the
|
||||
* normal lifecycle of interactions with the underlying sink.
|
||||
*/
|
||||
error(e?: any): void;
|
||||
}
|
||||
/**
|
||||
* A default writer vended by a {@link WritableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class WritableStreamDefaultWriter<W = any> {
|
||||
constructor(stream: WritableStream<W>);
|
||||
/*
|
||||
* Returns a promise that will be fulfilled when the stream becomes closed, or rejected if the stream ever errors or
|
||||
* the writer’s lock is released before the stream finishes closing.
|
||||
*/
|
||||
readonly closed: Promise<undefined>;
|
||||
/*
|
||||
* Returns the desired size to fill the stream’s internal queue. It can be negative, if the queue is over-full.
|
||||
* A producer can use this information to determine the right amount of data to write.
|
||||
*
|
||||
* It will be `null` if the stream cannot be successfully written to (due to either being errored, or having an abort
|
||||
* queued up). It will return zero if the stream is closed. And the getter will throw an exception if invoked when
|
||||
* the writer’s lock is released.
|
||||
*/
|
||||
readonly desiredSize: number | null;
|
||||
/*
|
||||
* Returns a promise that will be fulfilled when the desired size to fill the stream’s internal queue transitions
|
||||
* from non-positive to positive, signaling that it is no longer applying backpressure. Once the desired size dips
|
||||
* back to zero or below, the getter will return a new promise that stays pending until the next transition.
|
||||
*
|
||||
* If the stream becomes errored or aborted, or the writer’s lock is released, the returned promise will become
|
||||
* rejected.
|
||||
*/
|
||||
readonly ready: Promise<undefined>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link WritableStream.abort | stream.abort(reason)}.
|
||||
*/
|
||||
abort(reason?: any): Promise<void>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link WritableStream.close | stream.close()}.
|
||||
*/
|
||||
close(): Promise<void>;
|
||||
/**
|
||||
* Releases the writer’s lock on the corresponding stream. After the lock is released, the writer is no longer active.
|
||||
* If the associated stream is errored when the lock is released, the writer will appear errored in the same way from
|
||||
* now on; otherwise, the writer will appear closed.
|
||||
*
|
||||
* Note that the lock can still be released even if some ongoing writes have not yet finished (i.e. even if the
|
||||
* promises returned from previous calls to {@link WritableStreamDefaultWriter.write | write()} have not yet settled).
|
||||
* It’s not necessary to hold the lock on the writer for the duration of the write; the lock instead simply prevents
|
||||
* other producers from writing in an interleaved manner.
|
||||
*/
|
||||
releaseLock(): void;
|
||||
/**
|
||||
* Writes the given chunk to the writable stream, by waiting until any previous writes have finished successfully,
|
||||
* and then sending the chunk to the underlying sink's {@link UnderlyingSink.write | write()} method. It will return
|
||||
* a promise that fulfills with undefined upon a successful write, or rejects if the write fails or stream becomes
|
||||
* errored before the writing process is initiated.
|
||||
*
|
||||
* Note that what "success" means is up to the underlying sink; it might indicate simply that the chunk has been
|
||||
* accepted, and not necessarily that it is safely saved to its ultimate destination.
|
||||
*/
|
||||
write(chunk: W): Promise<void>;
|
||||
}
|
||||
export {};
|
||||
28
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/ts3.6/polyfill.d.ts
generated
vendored
Normal file
28
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/ts3.6/polyfill.d.ts
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
/// <reference lib="dom" />
|
||||
/// <reference lib="es2018.asynciterable" />
|
||||
|
||||
import type { ReadableStreamAsyncIterator, ReadableStreamIteratorOptions } from './ponyfill';
|
||||
|
||||
export * from './ponyfill';
|
||||
|
||||
declare global {
|
||||
interface ReadableStream<R = any> extends AsyncIterable<R> {
|
||||
/**
|
||||
* Asynchronously iterates over the chunks in the stream's internal queue.
|
||||
*
|
||||
* Asynchronously iterating over the stream will lock it, preventing any other consumer from acquiring a reader.
|
||||
* The lock will be released if the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method
|
||||
* is called, e.g. by breaking out of the loop.
|
||||
*
|
||||
* By default, calling the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method will also
|
||||
* cancel the stream. To prevent this, use the stream's {@link ReadableStream.values | values()} method, passing
|
||||
* `true` for the `preventCancel` option.
|
||||
*/
|
||||
values(options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
|
||||
/**
|
||||
* {@inheritDoc ReadableStream.values}
|
||||
*/
|
||||
[Symbol.asyncIterator](options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
}
|
||||
}
|
||||
821
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/ts3.6/ponyfill.d.ts
generated
vendored
Normal file
821
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/ts3.6/ponyfill.d.ts
generated
vendored
Normal file
@@ -0,0 +1,821 @@
|
||||
/// <reference lib="es2018.asynciterable" />
|
||||
|
||||
/**
|
||||
* A signal object that allows you to communicate with a request and abort it if required
|
||||
* via its associated `AbortController` object.
|
||||
*
|
||||
* @remarks
|
||||
* This interface is compatible with the `AbortSignal` interface defined in TypeScript's DOM types.
|
||||
* It is redefined here, so it can be polyfilled without a DOM, for example with
|
||||
* {@link https://www.npmjs.com/package/abortcontroller-polyfill | abortcontroller-polyfill} in a Node environment.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface AbortSignal {
|
||||
/**
|
||||
* Whether the request is aborted.
|
||||
*/
|
||||
readonly aborted: boolean;
|
||||
/**
|
||||
* If aborted, returns the reason for aborting.
|
||||
*/
|
||||
readonly reason?: any;
|
||||
/**
|
||||
* Add an event listener to be triggered when this signal becomes aborted.
|
||||
*/
|
||||
addEventListener(type: 'abort', listener: () => void): void;
|
||||
/**
|
||||
* Remove an event listener that was previously added with {@link AbortSignal.addEventListener}.
|
||||
*/
|
||||
removeEventListener(type: 'abort', listener: () => void): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* A queuing strategy that counts the number of bytes in each chunk.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ByteLengthQueuingStrategy implements QueuingStrategy<ArrayBufferView> {
|
||||
constructor(options: QueuingStrategyInit);
|
||||
/**
|
||||
* Returns the high water mark provided to the constructor.
|
||||
*/
|
||||
get highWaterMark(): number;
|
||||
/**
|
||||
* Measures the size of `chunk` by returning the value of its `byteLength` property.
|
||||
*/
|
||||
get size(): (chunk: ArrayBufferView) => number;
|
||||
}
|
||||
|
||||
/**
|
||||
* A queuing strategy that counts the number of chunks.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class CountQueuingStrategy implements QueuingStrategy<any> {
|
||||
constructor(options: QueuingStrategyInit);
|
||||
/**
|
||||
* Returns the high water mark provided to the constructor.
|
||||
*/
|
||||
get highWaterMark(): number;
|
||||
/**
|
||||
* Measures the size of `chunk` by always returning 1.
|
||||
* This ensures that the total queue size is a count of the number of chunks in the queue.
|
||||
*/
|
||||
get size(): (chunk: any) => 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* A queuing strategy.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface QueuingStrategy<T = any> {
|
||||
/**
|
||||
* A non-negative number indicating the high water mark of the stream using this queuing strategy.
|
||||
*/
|
||||
highWaterMark?: number;
|
||||
/**
|
||||
* A function that computes and returns the finite non-negative size of the given chunk value.
|
||||
*/
|
||||
size?: QueuingStrategySizeCallback<T>;
|
||||
}
|
||||
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare interface QueuingStrategyInit {
|
||||
/**
|
||||
* {@inheritDoc QueuingStrategy.highWaterMark}
|
||||
*/
|
||||
highWaterMark: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc QueuingStrategy.size}
|
||||
* @public
|
||||
*/
|
||||
export declare type QueuingStrategySizeCallback<T = any> = (chunk: T) => number;
|
||||
|
||||
/**
|
||||
* Allows control of a {@link ReadableStream | readable byte stream}'s state and internal queue.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableByteStreamController {
|
||||
private constructor();
|
||||
/**
|
||||
* Returns the current BYOB pull request, or `null` if there isn't one.
|
||||
*/
|
||||
get byobRequest(): ReadableStreamBYOBRequest | null;
|
||||
/**
|
||||
* Returns the desired size to fill the controlled stream's internal queue. It can be negative, if the queue is
|
||||
* over-full. An underlying byte source ought to use this information to determine when and how to apply backpressure.
|
||||
*/
|
||||
get desiredSize(): number | null;
|
||||
/**
|
||||
* Closes the controlled readable stream. Consumers will still be able to read any previously-enqueued chunks from
|
||||
* the stream, but once those are read, the stream will become closed.
|
||||
*/
|
||||
close(): void;
|
||||
/**
|
||||
* Enqueues the given chunk chunk in the controlled readable stream.
|
||||
* The chunk has to be an `ArrayBufferView` instance, or else a `TypeError` will be thrown.
|
||||
*/
|
||||
enqueue(chunk: ArrayBufferView): void;
|
||||
/**
|
||||
* Errors the controlled readable stream, making all future interactions with it fail with the given error `e`.
|
||||
*/
|
||||
error(e?: any): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* A readable stream represents a source of data, from which you can read.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStream<R = any> implements AsyncIterable<R> {
|
||||
constructor(underlyingSource: UnderlyingByteSource, strategy?: {
|
||||
highWaterMark?: number;
|
||||
size?: undefined;
|
||||
});
|
||||
constructor(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>);
|
||||
/**
|
||||
* Whether or not the readable stream is locked to a {@link ReadableStreamDefaultReader | reader}.
|
||||
*/
|
||||
get locked(): boolean;
|
||||
/**
|
||||
* Cancels the stream, signaling a loss of interest in the stream by a consumer.
|
||||
*
|
||||
* The supplied `reason` argument will be given to the underlying source's {@link UnderlyingSource.cancel | cancel()}
|
||||
* method, which might or might not use it.
|
||||
*/
|
||||
cancel(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Creates a {@link ReadableStreamBYOBReader} and locks the stream to the new reader.
|
||||
*
|
||||
* This call behaves the same way as the no-argument variant, except that it only works on readable byte streams,
|
||||
* i.e. streams which were constructed specifically with the ability to handle "bring your own buffer" reading.
|
||||
* The returned BYOB reader provides the ability to directly read individual chunks from the stream via its
|
||||
* {@link ReadableStreamBYOBReader.read | read()} method, into developer-supplied buffers, allowing more precise
|
||||
* control over allocation.
|
||||
*/
|
||||
getReader({ mode }: {
|
||||
mode: 'byob';
|
||||
}): ReadableStreamBYOBReader;
|
||||
/**
|
||||
* Creates a {@link ReadableStreamDefaultReader} and locks the stream to the new reader.
|
||||
* While the stream is locked, no other reader can be acquired until this one is released.
|
||||
*
|
||||
* This functionality is especially useful for creating abstractions that desire the ability to consume a stream
|
||||
* in its entirety. By getting a reader for the stream, you can ensure nobody else can interleave reads with yours
|
||||
* or cancel the stream, which would interfere with your abstraction.
|
||||
*/
|
||||
getReader(): ReadableStreamDefaultReader<R>;
|
||||
/**
|
||||
* Provides a convenient, chainable way of piping this readable stream through a transform stream
|
||||
* (or any other `{ writable, readable }` pair). It simply {@link ReadableStream.pipeTo | pipes} the stream
|
||||
* into the writable side of the supplied pair, and returns the readable side for further use.
|
||||
*
|
||||
* Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
|
||||
*/
|
||||
pipeThrough<RS extends ReadableStream>(transform: {
|
||||
readable: RS;
|
||||
writable: WritableStream<R>;
|
||||
}, options?: StreamPipeOptions): RS;
|
||||
/**
|
||||
* Pipes this readable stream to a given writable stream. The way in which the piping process behaves under
|
||||
* various error conditions can be customized with a number of passed options. It returns a promise that fulfills
|
||||
* when the piping process completes successfully, or rejects if any errors were encountered.
|
||||
*
|
||||
* Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
|
||||
*/
|
||||
pipeTo(destination: WritableStream<R>, options?: StreamPipeOptions): Promise<void>;
|
||||
/**
|
||||
* Tees this readable stream, returning a two-element array containing the two resulting branches as
|
||||
* new {@link ReadableStream} instances.
|
||||
*
|
||||
* Teeing a stream will lock it, preventing any other consumer from acquiring a reader.
|
||||
* To cancel the stream, cancel both of the resulting branches; a composite cancellation reason will then be
|
||||
* propagated to the stream's underlying source.
|
||||
*
|
||||
* Note that the chunks seen in each branch will be the same object. If the chunks are not immutable,
|
||||
* this could allow interference between the two branches.
|
||||
*/
|
||||
tee(): [ReadableStream<R>, ReadableStream<R>];
|
||||
/**
|
||||
* Asynchronously iterates over the chunks in the stream's internal queue.
|
||||
*
|
||||
* Asynchronously iterating over the stream will lock it, preventing any other consumer from acquiring a reader.
|
||||
* The lock will be released if the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method
|
||||
* is called, e.g. by breaking out of the loop.
|
||||
*
|
||||
* By default, calling the async iterator's {@link ReadableStreamAsyncIterator.return | return()} method will also
|
||||
* cancel the stream. To prevent this, use the stream's {@link ReadableStream.values | values()} method, passing
|
||||
* `true` for the `preventCancel` option.
|
||||
*/
|
||||
values(options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
/**
|
||||
* {@inheritDoc ReadableStream.values}
|
||||
*/
|
||||
[Symbol.asyncIterator](options?: ReadableStreamIteratorOptions): ReadableStreamAsyncIterator<R>;
|
||||
/**
|
||||
* Creates a new ReadableStream wrapping the provided iterable or async iterable.
|
||||
*
|
||||
* This can be used to adapt various kinds of objects into a readable stream,
|
||||
* such as an array, an async generator, or a Node.js readable stream.
|
||||
*/
|
||||
static from<R>(asyncIterable: Iterable<R> | AsyncIterable<R> | ReadableStreamLike<R>): ReadableStream<R>;
|
||||
}
|
||||
|
||||
/**
|
||||
* An async iterator returned by {@link ReadableStream.values}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamAsyncIterator<R> extends AsyncIterableIterator<R> {
|
||||
next(): Promise<IteratorResult<R, undefined>>;
|
||||
return(value?: any): Promise<IteratorResult<any>>;
|
||||
}
|
||||
|
||||
/**
|
||||
* A BYOB reader vended by a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamBYOBReader {
|
||||
constructor(stream: ReadableStream<Uint8Array>);
|
||||
/**
|
||||
* Returns a promise that will be fulfilled when the stream becomes closed, or rejected if the stream ever errors or
|
||||
* the reader's lock is released before the stream finishes closing.
|
||||
*/
|
||||
get closed(): Promise<undefined>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link ReadableStream.cancel | stream.cancel(reason)}.
|
||||
*/
|
||||
cancel(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Attempts to reads bytes into view, and returns a promise resolved with the result.
|
||||
*
|
||||
* If reading a chunk causes the queue to become empty, more data will be pulled from the underlying source.
|
||||
*/
|
||||
read<T extends ArrayBufferView>(view: T, options?: ReadableStreamBYOBReaderReadOptions): Promise<ReadableStreamBYOBReadResult<T>>;
|
||||
/**
|
||||
* Releases the reader's lock on the corresponding stream. After the lock is released, the reader is no longer active.
|
||||
* If the associated stream is errored when the lock is released, the reader will appear errored in the same way
|
||||
* from now on; otherwise, the reader will appear closed.
|
||||
*
|
||||
* A reader's lock cannot be released while it still has a pending read request, i.e., if a promise returned by
|
||||
* the reader's {@link ReadableStreamBYOBReader.read | read()} method has not yet been settled. Attempting to
|
||||
* do so will throw a `TypeError` and leave the reader locked to the stream.
|
||||
*/
|
||||
releaseLock(): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* Options for {@link ReadableStreamBYOBReader.read | reading} a stream
|
||||
* with a {@link ReadableStreamBYOBReader | BYOB reader}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamBYOBReaderReadOptions {
|
||||
min?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* A result returned by {@link ReadableStreamBYOBReader.read}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare type ReadableStreamBYOBReadResult<T extends ArrayBufferView> = {
|
||||
done: false;
|
||||
value: T;
|
||||
} | {
|
||||
done: true;
|
||||
value: T | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* A pull-into request in a {@link ReadableByteStreamController}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamBYOBRequest {
|
||||
private constructor();
|
||||
/**
|
||||
* Returns the view for writing in to, or `null` if the BYOB request has already been responded to.
|
||||
*/
|
||||
get view(): ArrayBufferView | null;
|
||||
/**
|
||||
* Indicates to the associated readable byte stream that `bytesWritten` bytes were written into
|
||||
* {@link ReadableStreamBYOBRequest.view | view}, causing the result be surfaced to the consumer.
|
||||
*
|
||||
* After this method is called, {@link ReadableStreamBYOBRequest.view | view} will be transferred and no longer
|
||||
* modifiable.
|
||||
*/
|
||||
respond(bytesWritten: number): void;
|
||||
/**
|
||||
* Indicates to the associated readable byte stream that instead of writing into
|
||||
* {@link ReadableStreamBYOBRequest.view | view}, the underlying byte source is providing a new `ArrayBufferView`,
|
||||
* which will be given to the consumer of the readable byte stream.
|
||||
*
|
||||
* After this method is called, `view` will be transferred and no longer modifiable.
|
||||
*/
|
||||
respondWithNewView(view: ArrayBufferView): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* Allows control of a {@link ReadableStream | readable stream}'s state and internal queue.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamDefaultController<R> {
|
||||
private constructor();
|
||||
/**
|
||||
* Returns the desired size to fill the controlled stream's internal queue. It can be negative, if the queue is
|
||||
* over-full. An underlying source ought to use this information to determine when and how to apply backpressure.
|
||||
*/
|
||||
get desiredSize(): number | null;
|
||||
/**
|
||||
* Closes the controlled readable stream. Consumers will still be able to read any previously-enqueued chunks from
|
||||
* the stream, but once those are read, the stream will become closed.
|
||||
*/
|
||||
close(): void;
|
||||
/**
|
||||
* Enqueues the given chunk `chunk` in the controlled readable stream.
|
||||
*/
|
||||
enqueue(chunk: R): void;
|
||||
/**
|
||||
* Errors the controlled readable stream, making all future interactions with it fail with the given error `e`.
|
||||
*/
|
||||
error(e?: any): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* A default reader vended by a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ReadableStreamDefaultReader<R = any> {
|
||||
constructor(stream: ReadableStream<R>);
|
||||
/**
|
||||
* Returns a promise that will be fulfilled when the stream becomes closed,
|
||||
* or rejected if the stream ever errors or the reader's lock is released before the stream finishes closing.
|
||||
*/
|
||||
get closed(): Promise<undefined>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link ReadableStream.cancel | stream.cancel(reason)}.
|
||||
*/
|
||||
cancel(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Returns a promise that allows access to the next chunk from the stream's internal queue, if available.
|
||||
*
|
||||
* If reading a chunk causes the queue to become empty, more data will be pulled from the underlying source.
|
||||
*/
|
||||
read(): Promise<ReadableStreamDefaultReadResult<R>>;
|
||||
/**
|
||||
* Releases the reader's lock on the corresponding stream. After the lock is released, the reader is no longer active.
|
||||
* If the associated stream is errored when the lock is released, the reader will appear errored in the same way
|
||||
* from now on; otherwise, the reader will appear closed.
|
||||
*
|
||||
* A reader's lock cannot be released while it still has a pending read request, i.e., if a promise returned by
|
||||
* the reader's {@link ReadableStreamDefaultReader.read | read()} method has not yet been settled. Attempting to
|
||||
* do so will throw a `TypeError` and leave the reader locked to the stream.
|
||||
*/
|
||||
releaseLock(): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* A common interface for a `ReadableStreamDefaultReader` implementation.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamDefaultReaderLike<R = any> {
|
||||
readonly closed: Promise<undefined>;
|
||||
cancel(reason?: any): Promise<void>;
|
||||
read(): Promise<ReadableStreamDefaultReadResult<R>>;
|
||||
releaseLock(): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* A result returned by {@link ReadableStreamDefaultReader.read}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare type ReadableStreamDefaultReadResult<T> = {
|
||||
done: false;
|
||||
value: T;
|
||||
} | {
|
||||
done: true;
|
||||
value?: undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* Options for {@link ReadableStream.values | async iterating} a stream.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamIteratorOptions {
|
||||
preventCancel?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* A common interface for a `ReadadableStream` implementation.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableStreamLike<R = any> {
|
||||
readonly locked: boolean;
|
||||
getReader(): ReadableStreamDefaultReaderLike<R>;
|
||||
}
|
||||
|
||||
/**
|
||||
* A pair of a {@link ReadableStream | readable stream} and {@link WritableStream | writable stream} that can be passed
|
||||
* to {@link ReadableStream.pipeThrough}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ReadableWritablePair<R, W> {
|
||||
readable: ReadableStream<R>;
|
||||
writable: WritableStream<W>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Options for {@link ReadableStream.pipeTo | piping} a stream.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface StreamPipeOptions {
|
||||
/**
|
||||
* If set to true, {@link ReadableStream.pipeTo} will not abort the writable stream if the readable stream errors.
|
||||
*/
|
||||
preventAbort?: boolean;
|
||||
/**
|
||||
* If set to true, {@link ReadableStream.pipeTo} will not cancel the readable stream if the writable stream closes
|
||||
* or errors.
|
||||
*/
|
||||
preventCancel?: boolean;
|
||||
/**
|
||||
* If set to true, {@link ReadableStream.pipeTo} will not close the writable stream if the readable stream closes.
|
||||
*/
|
||||
preventClose?: boolean;
|
||||
/**
|
||||
* Can be set to an {@link AbortSignal} to allow aborting an ongoing pipe operation via the corresponding
|
||||
* `AbortController`. In this case, the source readable stream will be canceled, and the destination writable stream
|
||||
* aborted, unless the respective options `preventCancel` or `preventAbort` are set.
|
||||
*/
|
||||
signal?: AbortSignal;
|
||||
}
|
||||
|
||||
/**
|
||||
* A transformer for constructing a {@link TransformStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface Transformer<I = any, O = any> {
|
||||
/**
|
||||
* A function that is called immediately during creation of the {@link TransformStream}.
|
||||
*/
|
||||
start?: TransformerStartCallback<O>;
|
||||
/**
|
||||
* A function called when a new chunk originally written to the writable side is ready to be transformed.
|
||||
*/
|
||||
transform?: TransformerTransformCallback<I, O>;
|
||||
/**
|
||||
* A function called after all chunks written to the writable side have been transformed by successfully passing
|
||||
* through {@link Transformer.transform | transform()}, and the writable side is about to be closed.
|
||||
*/
|
||||
flush?: TransformerFlushCallback<O>;
|
||||
/**
|
||||
* A function called when the readable side is cancelled, or when the writable side is aborted.
|
||||
*/
|
||||
cancel?: TransformerCancelCallback;
|
||||
readableType?: undefined;
|
||||
writableType?: undefined;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export declare type TransformerCancelCallback = (reason: any) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type TransformerFlushCallback<O> = (controller: TransformStreamDefaultController<O>) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type TransformerStartCallback<O> = (controller: TransformStreamDefaultController<O>) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type TransformerTransformCallback<I, O> = (chunk: I, controller: TransformStreamDefaultController<O>) => void | PromiseLike<void>;
|
||||
|
||||
/**
|
||||
* A transform stream consists of a pair of streams: a {@link WritableStream | writable stream},
|
||||
* known as its writable side, and a {@link ReadableStream | readable stream}, known as its readable side.
|
||||
* In a manner specific to the transform stream in question, writes to the writable side result in new data being
|
||||
* made available for reading from the readable side.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class TransformStream<I = any, O = any> {
|
||||
constructor(transformer?: Transformer<I, O>, writableStrategy?: QueuingStrategy<I>, readableStrategy?: QueuingStrategy<O>);
|
||||
/**
|
||||
* The readable side of the transform stream.
|
||||
*/
|
||||
get readable(): ReadableStream<O>;
|
||||
/**
|
||||
* The writable side of the transform stream.
|
||||
*/
|
||||
get writable(): WritableStream<I>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Allows control of the {@link ReadableStream} and {@link WritableStream} of the associated {@link TransformStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class TransformStreamDefaultController<O> {
|
||||
private constructor();
|
||||
/**
|
||||
* Returns the desired size to fill the readable side’s internal queue. It can be negative, if the queue is over-full.
|
||||
*/
|
||||
get desiredSize(): number | null;
|
||||
/**
|
||||
* Enqueues the given chunk `chunk` in the readable side of the controlled transform stream.
|
||||
*/
|
||||
enqueue(chunk: O): void;
|
||||
/**
|
||||
* Errors both the readable side and the writable side of the controlled transform stream, making all future
|
||||
* interactions with it fail with the given error `e`. Any chunks queued for transformation will be discarded.
|
||||
*/
|
||||
error(reason?: any): void;
|
||||
/**
|
||||
* Closes the readable side and errors the writable side of the controlled transform stream. This is useful when the
|
||||
* transformer only needs to consume a portion of the chunks written to the writable side.
|
||||
*/
|
||||
terminate(): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* An underlying byte source for constructing a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface UnderlyingByteSource {
|
||||
/**
|
||||
* {@inheritDoc UnderlyingSource.start}
|
||||
*/
|
||||
start?: UnderlyingByteSourceStartCallback;
|
||||
/**
|
||||
* {@inheritDoc UnderlyingSource.pull}
|
||||
*/
|
||||
pull?: UnderlyingByteSourcePullCallback;
|
||||
/**
|
||||
* {@inheritDoc UnderlyingSource.cancel}
|
||||
*/
|
||||
cancel?: UnderlyingSourceCancelCallback;
|
||||
/**
|
||||
* Can be set to "bytes" to signal that the constructed {@link ReadableStream} is a readable byte stream.
|
||||
* This ensures that the resulting {@link ReadableStream} will successfully be able to vend BYOB readers via its
|
||||
* {@link ReadableStream.(getReader:1) | getReader()} method.
|
||||
* It also affects the controller argument passed to the {@link UnderlyingByteSource.start | start()}
|
||||
* and {@link UnderlyingByteSource.pull | pull()} methods.
|
||||
*/
|
||||
type: 'bytes';
|
||||
/**
|
||||
* Can be set to a positive integer to cause the implementation to automatically allocate buffers for the
|
||||
* underlying source code to write into. In this case, when a consumer is using a default reader, the stream
|
||||
* implementation will automatically allocate an ArrayBuffer of the given size, so that
|
||||
* {@link ReadableByteStreamController.byobRequest | controller.byobRequest} is always present,
|
||||
* as if the consumer was using a BYOB reader.
|
||||
*/
|
||||
autoAllocateChunkSize?: number;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingByteSourcePullCallback = (controller: ReadableByteStreamController) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingByteSourceStartCallback = (controller: ReadableByteStreamController) => void | PromiseLike<void>;
|
||||
|
||||
/**
|
||||
* An underlying sink for constructing a {@link WritableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface UnderlyingSink<W = any> {
|
||||
/**
|
||||
* A function that is called immediately during creation of the {@link WritableStream}.
|
||||
*/
|
||||
start?: UnderlyingSinkStartCallback;
|
||||
/**
|
||||
* A function that is called when a new chunk of data is ready to be written to the underlying sink. The stream
|
||||
* implementation guarantees that this function will be called only after previous writes have succeeded, and never
|
||||
* before {@link UnderlyingSink.start | start()} has succeeded or after {@link UnderlyingSink.close | close()} or
|
||||
* {@link UnderlyingSink.abort | abort()} have been called.
|
||||
*
|
||||
* This function is used to actually send the data to the resource presented by the underlying sink, for example by
|
||||
* calling a lower-level API.
|
||||
*/
|
||||
write?: UnderlyingSinkWriteCallback<W>;
|
||||
/**
|
||||
* A function that is called after the producer signals, via
|
||||
* {@link WritableStreamDefaultWriter.close | writer.close()}, that they are done writing chunks to the stream, and
|
||||
* subsequently all queued-up writes have successfully completed.
|
||||
*
|
||||
* This function can perform any actions necessary to finalize or flush writes to the underlying sink, and release
|
||||
* access to any held resources.
|
||||
*/
|
||||
close?: UnderlyingSinkCloseCallback;
|
||||
/**
|
||||
* A function that is called after the producer signals, via {@link WritableStream.abort | stream.abort()} or
|
||||
* {@link WritableStreamDefaultWriter.abort | writer.abort()}, that they wish to abort the stream. It takes as its
|
||||
* argument the same value as was passed to those methods by the producer.
|
||||
*
|
||||
* Writable streams can additionally be aborted under certain conditions during piping; see the definition of the
|
||||
* {@link ReadableStream.pipeTo | pipeTo()} method for more details.
|
||||
*
|
||||
* This function can clean up any held resources, much like {@link UnderlyingSink.close | close()}, but perhaps with
|
||||
* some custom handling.
|
||||
*/
|
||||
abort?: UnderlyingSinkAbortCallback;
|
||||
type?: undefined;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkAbortCallback = (reason: any) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkCloseCallback = () => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkStartCallback = (controller: WritableStreamDefaultController) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSinkWriteCallback<W> = (chunk: W, controller: WritableStreamDefaultController) => void | PromiseLike<void>;
|
||||
|
||||
/**
|
||||
* An underlying source for constructing a {@link ReadableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface UnderlyingSource<R = any> {
|
||||
/**
|
||||
* A function that is called immediately during creation of the {@link ReadableStream}.
|
||||
*/
|
||||
start?: UnderlyingSourceStartCallback<R>;
|
||||
/**
|
||||
* A function that is called whenever the stream’s internal queue of chunks becomes not full,
|
||||
* i.e. whenever the queue’s desired size becomes positive. Generally, it will be called repeatedly
|
||||
* until the queue reaches its high water mark (i.e. until the desired size becomes non-positive).
|
||||
*/
|
||||
pull?: UnderlyingSourcePullCallback<R>;
|
||||
/**
|
||||
* A function that is called whenever the consumer cancels the stream, via
|
||||
* {@link ReadableStream.cancel | stream.cancel()},
|
||||
* {@link ReadableStreamDefaultReader.cancel | defaultReader.cancel()}, or
|
||||
* {@link ReadableStreamBYOBReader.cancel | byobReader.cancel()}.
|
||||
* It takes as its argument the same value as was passed to those methods by the consumer.
|
||||
*/
|
||||
cancel?: UnderlyingSourceCancelCallback;
|
||||
type?: undefined;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSourceCancelCallback = (reason: any) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSourcePullCallback<R> = (controller: ReadableStreamDefaultController<R>) => void | PromiseLike<void>;
|
||||
|
||||
/** @public */
|
||||
export declare type UnderlyingSourceStartCallback<R> = (controller: ReadableStreamDefaultController<R>) => void | PromiseLike<void>;
|
||||
|
||||
/**
|
||||
* A writable stream represents a destination for data, into which you can write.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class WritableStream<W = any> {
|
||||
constructor(underlyingSink?: UnderlyingSink<W>, strategy?: QueuingStrategy<W>);
|
||||
/**
|
||||
* Returns whether or not the writable stream is locked to a writer.
|
||||
*/
|
||||
get locked(): boolean;
|
||||
/**
|
||||
* Aborts the stream, signaling that the producer can no longer successfully write to the stream and it is to be
|
||||
* immediately moved to an errored state, with any queued-up writes discarded. This will also execute any abort
|
||||
* mechanism of the underlying sink.
|
||||
*
|
||||
* The returned promise will fulfill if the stream shuts down successfully, or reject if the underlying sink signaled
|
||||
* that there was an error doing so. Additionally, it will reject with a `TypeError` (without attempting to cancel
|
||||
* the stream) if the stream is currently locked.
|
||||
*/
|
||||
abort(reason?: any): Promise<void>;
|
||||
/**
|
||||
* Closes the stream. The underlying sink will finish processing any previously-written chunks, before invoking its
|
||||
* close behavior. During this time any further attempts to write will fail (without erroring the stream).
|
||||
*
|
||||
* The method returns a promise that will fulfill if all remaining chunks are successfully written and the stream
|
||||
* successfully closes, or rejects if an error is encountered during this process. Additionally, it will reject with
|
||||
* a `TypeError` (without attempting to cancel the stream) if the stream is currently locked.
|
||||
*/
|
||||
close(): Promise<undefined>;
|
||||
/**
|
||||
* Creates a {@link WritableStreamDefaultWriter | writer} and locks the stream to the new writer. While the stream
|
||||
* is locked, no other writer can be acquired until this one is released.
|
||||
*
|
||||
* This functionality is especially useful for creating abstractions that desire the ability to write to a stream
|
||||
* without interruption or interleaving. By getting a writer for the stream, you can ensure nobody else can write at
|
||||
* the same time, which would cause the resulting written data to be unpredictable and probably useless.
|
||||
*/
|
||||
getWriter(): WritableStreamDefaultWriter<W>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Allows control of a {@link WritableStream | writable stream}'s state and internal queue.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class WritableStreamDefaultController<W = any> {
|
||||
private constructor();
|
||||
/**
|
||||
* The reason which was passed to `WritableStream.abort(reason)` when the stream was aborted.
|
||||
*
|
||||
* @deprecated
|
||||
* This property has been removed from the specification, see https://github.com/whatwg/streams/pull/1177.
|
||||
* Use {@link WritableStreamDefaultController.signal}'s `reason` instead.
|
||||
*/
|
||||
get abortReason(): any;
|
||||
/**
|
||||
* An `AbortSignal` that can be used to abort the pending write or close operation when the stream is aborted.
|
||||
*/
|
||||
get signal(): AbortSignal;
|
||||
/**
|
||||
* Closes the controlled writable stream, making all future interactions with it fail with the given error `e`.
|
||||
*
|
||||
* This method is rarely used, since usually it suffices to return a rejected promise from one of the underlying
|
||||
* sink's methods. However, it can be useful for suddenly shutting down a stream in response to an event outside the
|
||||
* normal lifecycle of interactions with the underlying sink.
|
||||
*/
|
||||
error(e?: any): void;
|
||||
}
|
||||
|
||||
/**
|
||||
* A default writer vended by a {@link WritableStream}.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class WritableStreamDefaultWriter<W = any> {
|
||||
constructor(stream: WritableStream<W>);
|
||||
/**
|
||||
* Returns a promise that will be fulfilled when the stream becomes closed, or rejected if the stream ever errors or
|
||||
* the writer’s lock is released before the stream finishes closing.
|
||||
*/
|
||||
get closed(): Promise<undefined>;
|
||||
/**
|
||||
* Returns the desired size to fill the stream’s internal queue. It can be negative, if the queue is over-full.
|
||||
* A producer can use this information to determine the right amount of data to write.
|
||||
*
|
||||
* It will be `null` if the stream cannot be successfully written to (due to either being errored, or having an abort
|
||||
* queued up). It will return zero if the stream is closed. And the getter will throw an exception if invoked when
|
||||
* the writer’s lock is released.
|
||||
*/
|
||||
get desiredSize(): number | null;
|
||||
/**
|
||||
* Returns a promise that will be fulfilled when the desired size to fill the stream’s internal queue transitions
|
||||
* from non-positive to positive, signaling that it is no longer applying backpressure. Once the desired size dips
|
||||
* back to zero or below, the getter will return a new promise that stays pending until the next transition.
|
||||
*
|
||||
* If the stream becomes errored or aborted, or the writer’s lock is released, the returned promise will become
|
||||
* rejected.
|
||||
*/
|
||||
get ready(): Promise<undefined>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link WritableStream.abort | stream.abort(reason)}.
|
||||
*/
|
||||
abort(reason?: any): Promise<void>;
|
||||
/**
|
||||
* If the reader is active, behaves the same as {@link WritableStream.close | stream.close()}.
|
||||
*/
|
||||
close(): Promise<void>;
|
||||
/**
|
||||
* Releases the writer’s lock on the corresponding stream. After the lock is released, the writer is no longer active.
|
||||
* If the associated stream is errored when the lock is released, the writer will appear errored in the same way from
|
||||
* now on; otherwise, the writer will appear closed.
|
||||
*
|
||||
* Note that the lock can still be released even if some ongoing writes have not yet finished (i.e. even if the
|
||||
* promises returned from previous calls to {@link WritableStreamDefaultWriter.write | write()} have not yet settled).
|
||||
* It’s not necessary to hold the lock on the writer for the duration of the write; the lock instead simply prevents
|
||||
* other producers from writing in an interleaved manner.
|
||||
*/
|
||||
releaseLock(): void;
|
||||
/**
|
||||
* Writes the given chunk to the writable stream, by waiting until any previous writes have finished successfully,
|
||||
* and then sending the chunk to the underlying sink's {@link UnderlyingSink.write | write()} method. It will return
|
||||
* a promise that fulfills with undefined upon a successful write, or rejects if the write fails or stream becomes
|
||||
* errored before the writing process is initiated.
|
||||
*
|
||||
* Note that what "success" means is up to the underlying sink; it might indicate simply that the chunk has been
|
||||
* accepted, and not necessarily that it is safely saved to its ultimate destination.
|
||||
*/
|
||||
write(chunk: W): Promise<void>;
|
||||
}
|
||||
|
||||
export { }
|
||||
11
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/tsdoc-metadata.json
generated
vendored
Normal file
11
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/dist/types/tsdoc-metadata.json
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
||||
// It should be published with your NPM package. It should not be tracked by Git.
|
||||
{
|
||||
"tsdocVersion": "0.12",
|
||||
"toolPackages": [
|
||||
{
|
||||
"packageName": "@microsoft/api-extractor",
|
||||
"packageVersion": "7.39.1"
|
||||
}
|
||||
]
|
||||
}
|
||||
14
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/es2018/package.json
generated
vendored
Normal file
14
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/es2018/package.json
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "web-streams-polyfill-es2018",
|
||||
"main": "../dist/polyfill.es2018",
|
||||
"browser": "../dist/polyfill.es2018.min.js",
|
||||
"module": "../dist/polyfill.es2018.mjs",
|
||||
"types": "../dist/types/polyfill.d.ts",
|
||||
"typesVersions": {
|
||||
">=3.6": {
|
||||
"../dist/types/*": [
|
||||
"../dist/types/ts3.6/*"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
14
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/es6/package.json
generated
vendored
Normal file
14
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/es6/package.json
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "web-streams-polyfill-es6",
|
||||
"main": "../dist/polyfill.es6",
|
||||
"browser": "../dist/polyfill.es6.min.js",
|
||||
"module": "../dist/polyfill.es6.mjs",
|
||||
"types": "../dist/types/polyfill.d.ts",
|
||||
"typesVersions": {
|
||||
">=3.6": {
|
||||
"../dist/types/*": [
|
||||
"../dist/types/ts3.6/*"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
83
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/package.json
generated
vendored
Normal file
83
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/package.json
generated
vendored
Normal file
@@ -0,0 +1,83 @@
|
||||
{
|
||||
"name": "web-streams-polyfill",
|
||||
"version": "3.3.3",
|
||||
"description": "Web Streams, based on the WHATWG spec reference implementation",
|
||||
"main": "dist/polyfill",
|
||||
"browser": "dist/polyfill.min.js",
|
||||
"module": "dist/polyfill.mjs",
|
||||
"types": "dist/types/polyfill.d.ts",
|
||||
"typesVersions": {
|
||||
">=3.6": {
|
||||
"dist/types/*": [
|
||||
"dist/types/ts3.6/*"
|
||||
]
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"test": "npm run test:types && npm run test:unit && npm run test:wpt",
|
||||
"test:wpt": "npm run test:wpt:node && npm run test:wpt:chromium && npm run test:wpt:firefox",
|
||||
"test:wpt:node": "node --expose_gc ./test/wpt/node/run.js",
|
||||
"test:wpt:chromium": "node ./test/wpt/browser/run.js --browser chromium",
|
||||
"test:wpt:firefox": "node ./test/wpt/browser/run.js --browser firefox",
|
||||
"test:types": "tsc -p ./test/types/tsconfig.json",
|
||||
"test:unit": "jasmine --config=test/unit/jasmine.json",
|
||||
"lint": "eslint \"src/**/*.ts\"",
|
||||
"build": "npm run build:bundle && npm run build:types",
|
||||
"build:bundle": "rollup -c",
|
||||
"build:types": "tsc --project . --emitDeclarationOnly --declarationDir ./lib && api-extractor run",
|
||||
"accept:types": "npm run build:types -- --local",
|
||||
"postbuild:types": "downlevel-dts ./dist/types/ts3.6/ ./dist/types/ --to=3.5 && node ./build/downlevel-dts.js",
|
||||
"prepare": "npm run build"
|
||||
},
|
||||
"files": [
|
||||
"dist",
|
||||
"es6",
|
||||
"es2018",
|
||||
"ponyfill"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/MattiasBuelens/web-streams-polyfill.git"
|
||||
},
|
||||
"keywords": [
|
||||
"streams",
|
||||
"whatwg",
|
||||
"polyfill"
|
||||
],
|
||||
"author": "Mattias Buelens <mattias@buelens.com>",
|
||||
"contributors": [
|
||||
"Diwank Singh <diwank.singh@gmail.com>"
|
||||
],
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/MattiasBuelens/web-streams-polyfill/issues"
|
||||
},
|
||||
"homepage": "https://github.com/MattiasBuelens/web-streams-polyfill#readme",
|
||||
"devDependencies": {
|
||||
"@microsoft/api-extractor": "^7.39.1",
|
||||
"@rollup/plugin-inject": "^5.0.5",
|
||||
"@rollup/plugin-replace": "^5.0.5",
|
||||
"@rollup/plugin-strip": "^3.0.4",
|
||||
"@rollup/plugin-terser": "^0.4.4",
|
||||
"@rollup/plugin-typescript": "^11.1.5",
|
||||
"@types/node": "^18.19.4",
|
||||
"@typescript-eslint/eslint-plugin": "^6.17.0",
|
||||
"@typescript-eslint/parser": "^6.17.0",
|
||||
"@ungap/promise-all-settled": "^1.1.2",
|
||||
"downlevel-dts": "^0.11.0",
|
||||
"eslint": "^8.56.0",
|
||||
"jasmine": "^5.1.0",
|
||||
"micromatch": "^4.0.5",
|
||||
"minimist": "^1.2.5",
|
||||
"playwright": "^1.14.1",
|
||||
"recursive-readdir": "^2.2.2",
|
||||
"rollup": "^4.9.2",
|
||||
"ts-morph": "^10.0.2",
|
||||
"tslib": "^2.6.2",
|
||||
"typescript": "^5.3.3",
|
||||
"wpt-runner": "^5.0.0"
|
||||
}
|
||||
}
|
||||
13
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/ponyfill/es2018/package.json
generated
vendored
Normal file
13
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/ponyfill/es2018/package.json
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "web-streams-ponyfill-es2018",
|
||||
"main": "../../dist/ponyfill.es2018",
|
||||
"module": "../../dist/ponyfill.es2018.mjs",
|
||||
"types": "../../dist/types/ponyfill.d.ts",
|
||||
"typesVersions": {
|
||||
">=3.6": {
|
||||
"../../dist/types/*": [
|
||||
"../../dist/types/ts3.6/*"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
13
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/ponyfill/es6/package.json
generated
vendored
Normal file
13
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/ponyfill/es6/package.json
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "web-streams-ponyfill-es6",
|
||||
"main": "../../dist/ponyfill.es6",
|
||||
"module": "../../dist/ponyfill.es6.mjs",
|
||||
"types": "../../dist/types/ponyfill.d.ts",
|
||||
"typesVersions": {
|
||||
">=3.6": {
|
||||
"../../dist/types/*": [
|
||||
"../../dist/types/ts3.6/*"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
13
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/ponyfill/package.json
generated
vendored
Normal file
13
unified-ai-platform/node_modules/fetch-blob/node_modules/web-streams-polyfill/ponyfill/package.json
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "web-streams-ponyfill",
|
||||
"main": "../dist/ponyfill",
|
||||
"module": "../dist/ponyfill.mjs",
|
||||
"types": "../dist/types/ponyfill.d.ts",
|
||||
"typesVersions": {
|
||||
">=3.6": {
|
||||
"../dist/types/*": [
|
||||
"../dist/types/ts3.6/*"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
56
unified-ai-platform/node_modules/fetch-blob/package.json
generated
vendored
Normal file
56
unified-ai-platform/node_modules/fetch-blob/package.json
generated
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"name": "fetch-blob",
|
||||
"version": "3.2.0",
|
||||
"description": "Blob & File implementation in Node.js, originally from node-fetch.",
|
||||
"main": "index.js",
|
||||
"type": "module",
|
||||
"files": [
|
||||
"from.js",
|
||||
"file.js",
|
||||
"file.d.ts",
|
||||
"index.js",
|
||||
"index.d.ts",
|
||||
"from.d.ts",
|
||||
"streams.cjs"
|
||||
],
|
||||
"scripts": {
|
||||
"test": "node --experimental-loader ./test/http-loader.js ./test/test-wpt-in-node.js",
|
||||
"report": "c8 --reporter json --reporter text npm run test",
|
||||
"coverage": "npm run report && codecov -f coverage/coverage-final.json",
|
||||
"prepublishOnly": "tsc --declaration --emitDeclarationOnly --allowJs index.js from.js"
|
||||
},
|
||||
"repository": "https://github.com/node-fetch/fetch-blob.git",
|
||||
"keywords": [
|
||||
"blob",
|
||||
"file",
|
||||
"node-fetch"
|
||||
],
|
||||
"engines": {
|
||||
"node": "^12.20 || >= 14.13"
|
||||
},
|
||||
"author": "Jimmy Wärting <jimmy@warting.se> (https://jimmy.warting.se)",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/node-fetch/fetch-blob/issues"
|
||||
},
|
||||
"homepage": "https://github.com/node-fetch/fetch-blob#readme",
|
||||
"devDependencies": {
|
||||
"@types/node": "^17.0.9",
|
||||
"c8": "^7.11.0",
|
||||
"typescript": "^4.5.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/jimmywarting"
|
||||
},
|
||||
{
|
||||
"type": "paypal",
|
||||
"url": "https://paypal.me/jimmywarting"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"node-domexception": "^1.0.0",
|
||||
"web-streams-polyfill": "^3.0.3"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user