Files
personal_site/frontend/node_modules/@whatwg-node/node-fetch/esm/TextEncoderDecoderStream.js
T

36 lines
1.1 KiB
JavaScript

import { PonyfillTextDecoder, PonyfillTextEncoder } from './TextEncoderDecoder.js';
import { PonyfillTransformStream } from './TransformStream.js';
export class PonyfillTextDecoderStream extends PonyfillTransformStream {
textDecoder;
constructor(encoding, options) {
super({
transform: (chunk, controller) => controller.enqueue(this.textDecoder.decode(chunk, { stream: true })),
});
this.textDecoder = new PonyfillTextDecoder(encoding, options);
}
get encoding() {
return this.textDecoder.encoding;
}
get fatal() {
return this.textDecoder.fatal;
}
get ignoreBOM() {
return this.textDecoder.ignoreBOM;
}
}
export class PonyfillTextEncoderStream extends PonyfillTransformStream {
textEncoder;
constructor(encoding) {
super({
transform: (chunk, controller) => controller.enqueue(this.textEncoder.encode(chunk)),
});
this.textEncoder = new PonyfillTextEncoder(encoding);
}
get encoding() {
return this.textEncoder.encoding;
}
encode(input) {
return this.textEncoder.encode(input);
}
}