UNPKG

byte-encodings

Version:

Utilities for encoding and decoding common formats like hex, base64, and varint. Ported from Deno's @std/encoding.

2 lines (1 loc) 798 B
import{a as y,b as u,c as p,d,e as c}from"./chunk-VAQA7TNE.js";import{a as i}from"./chunk-JF3YMNGM.js";var A=new TextEncoder,U=new TextDecoder,f=class extends TransformStream{constructor(a={}){let o=function(){return a.output==="bytes"?t=>t:t=>U.decode(t)}();super({transform(t,e){let[r,s]=i(t,p(t.length));d(r,s,0,y),e.enqueue(o(r))}})}},x=class extends TransformStream{constructor(a={}){let o=function(){return a.input==="bytes"?r=>r:r=>A.encode(r)}(),t=new Uint8Array(1),e=0;super({transform(r,s){let n=o(r);e&&(n=i(n,e+n.length)[0],n.set(t.subarray(0,e))),e=n.length%2,e&&t.set(n.subarray(-e));let b=c(n.subarray(0,-e||void 0),0,0,u);s.enqueue(n.subarray(0,b))},flush(r){if(e){let s=c(t.subarray(0,e),0,0,u);r.enqueue(t.subarray(0,s))}}})}};export{x as HexDecoderStream,f as HexEncoderStream};