char/avril
(wip) why'd you have to go and make things so complicaaaaated?
git clone https://git.t4t.associates/char/avril
e9b1b43
main
1import "./main.js" ; 2import { getter , uncurryThis } from "ext:core/primordials" ; 3import type * as Vendor from "./vendor_types.js" ; 4export type * from "./vendor_types.js" ; 5export type ReadableStream < R = unknown > = Vendor . ReadableStream < R >; 6export type WritableStream < W = unknown > = Vendor . WritableStream < W >; 7export type TransformStream < I = unknown , O = unknown > = Vendor . TransformStream < 8I , 9O 10>; 11export type ReadableByteStreamController = Vendor . ReadableByteStreamController ; 12export type ReadableStreamBYOBRequest = Vendor . ReadableStreamBYOBRequest ; 13export type TransformStreamDefaultController < O = unknown > = 14Vendor . TransformStreamDefaultController < O >; 15 16export const { 17 ReadableStream, 18 WritableStream, 19 TransformStream, 20 ReadableByteStreamController, 21 ReadableStreamBYOBRequest, 22 TransformStreamDefaultController, 23} = globalThis ; 24export const streamLocked = getter ( ReadableStream . prototype , "locked" ); 25export const streamReader :< R > ( 26stream :Vendor . ReadableStream < R >, 27) => Vendor . ReadableStreamDefaultReader < R > = uncurryThis ( 28ReadableStream . prototype . getReader , 29); 30export const streamTee :< R > ( 31stream :Vendor . ReadableStream < R >, 32) => [ Vendor . ReadableStream < R >, Vendor . ReadableStream < R >] = uncurryThis ( 33ReadableStream . prototype . tee , 34); 35export const streamCancel :( 36stream :Vendor . ReadableStream < unknown >, 37reason ?:unknown , 38) => Promise < void > = uncurryThis ( ReadableStream . prototype . cancel ); 39export const read = uncurryThis ( ReadableStreamDefaultReader . prototype . read ) as < 40R , 41> ( 42reader :Vendor . ReadableStreamDefaultReader < R >, 43) => Promise < Vendor . ReadResult < R >>; 44export const release :( 45reader :Vendor . ReadableStreamDefaultReader < unknown >, 46) => void = uncurryThis ( 47ReadableStreamDefaultReader . prototype . releaseLock , 48); 49export const readerCancel :( 50reader :Vendor . ReadableStreamDefaultReader < unknown >, 51reason ?:unknown , 52) => Promise < void > = uncurryThis ( 53ReadableStreamDefaultReader . prototype . cancel , 54); 55export const enqueue = uncurryThis ( 56ReadableByteStreamController . prototype . enqueue , 57); 58export const close = uncurryThis ( ReadableByteStreamController . prototype . close ); 59export const errorStream = uncurryThis ( 60ReadableByteStreamController . prototype . error , 61); 62export const byobRequest = getter ( 63ReadableByteStreamController . prototype , 64"byobRequest" , 65); 66export const respond = uncurryThis ( ReadableStreamBYOBRequest . prototype . respond ); 67export function finish ( controller :Vendor . ReadableByteStreamController ) :void { 68const request = byobRequest ( controller ); 69close ( controller ); 70if ( request ) respond ( request , 0 ); 71}