Skip to main content
Module

x/html_rewriter/vendor/html_rewriter.js

WASM-based implementation of Cloudflare's HTML Rewriter for use in Deno, browsers, etc.
Go to Latest
File
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975
import { awaitPromise, setWasmExports, wrap } from './asyncify.js';
let wasm;
const heap = new Array(32).fill(undefined);
heap.push(undefined, null, true, false);
function getObject(idx) { return heap[idx]; }
let heap_next = heap.length;
function dropObject(idx) { if (idx < 36) return; heap[idx] = heap_next; heap_next = idx;}
function takeObject(idx) { const ret = getObject(idx); dropObject(idx); return ret;}
let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
cachedTextDecoder.decode();
let cachegetUint8Memory0 = null;function getUint8Memory0() { if (cachegetUint8Memory0 === null || cachegetUint8Memory0.buffer !== wasm.memory.buffer) { cachegetUint8Memory0 = new Uint8Array(wasm.memory.buffer); } return cachegetUint8Memory0;}
function getStringFromWasm0(ptr, len) { return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));}
function addHeapObject(obj) { if (heap_next === heap.length) heap.push(heap.length + 1); const idx = heap_next; heap_next = heap[idx];
heap[idx] = obj; return idx;}
function debugString(val) { // primitive types const type = typeof val; if (type == 'number' || type == 'boolean' || val == null) { return `${val}`; } if (type == 'string') { return `"${val}"`; } if (type == 'symbol') { const description = val.description; if (description == null) { return 'Symbol'; } else { return `Symbol(${description})`; } } if (type == 'function') { const name = val.name; if (typeof name == 'string' && name.length > 0) { return `Function(${name})`; } else { return 'Function'; } } // objects if (Array.isArray(val)) { const length = val.length; let debug = '['; if (length > 0) { debug += debugString(val[0]); } for(let i = 1; i < length; i++) { debug += ', ' + debugString(val[i]); } debug += ']'; return debug; } // Test for built-in const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val)); let className; if (builtInMatches.length > 1) { className = builtInMatches[1]; } else { // Failed to match the standard '[object ClassName]' return toString.call(val); } if (className == 'Object') { // we're a user defined class or Object // JSON.stringify avoids problems with cycles, and is generally much // easier than looping through ownProperties of `val`. try { return 'Object(' + JSON.stringify(val) + ')'; } catch (_) { return 'Object'; } } // errors if (val instanceof Error) { return `${val.name}: ${val.message}\n${val.stack}`; } // TODO we could test for more things here, like `Set`s and `Map`s. return className;}
let WASM_VECTOR_LEN = 0;
let cachedTextEncoder = new TextEncoder('utf-8');
const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' ? function (arg, view) { return cachedTextEncoder.encodeInto(arg, view);} : function (arg, view) { const buf = cachedTextEncoder.encode(arg); view.set(buf); return { read: arg.length, written: buf.length };});
function passStringToWasm0(arg, malloc, realloc) {
if (realloc === undefined) { const buf = cachedTextEncoder.encode(arg); const ptr = malloc(buf.length); getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); WASM_VECTOR_LEN = buf.length; return ptr; }
let len = arg.length; let ptr = malloc(len);
const mem = getUint8Memory0();
let offset = 0;
for (; offset < len; offset++) { const code = arg.charCodeAt(offset); if (code > 0x7F) break; mem[ptr + offset] = code; }
if (offset !== len) { if (offset !== 0) { arg = arg.slice(offset); } ptr = realloc(ptr, len, len = offset + arg.length * 3); const view = getUint8Memory0().subarray(ptr + offset, ptr + len); const ret = encodeString(arg, view);
offset += ret.written; }
WASM_VECTOR_LEN = offset; return ptr;}
let cachegetInt32Memory0 = null;function getInt32Memory0() { if (cachegetInt32Memory0 === null || cachegetInt32Memory0.buffer !== wasm.memory.buffer) { cachegetInt32Memory0 = new Int32Array(wasm.memory.buffer); } return cachegetInt32Memory0;}
function isLikeNone(x) { return x === undefined || x === null;}
let stack_pointer = 32;
function addBorrowedObject(obj) { if (stack_pointer == 1) throw new Error('out of js stack'); heap[--stack_pointer] = obj; return stack_pointer;}
function passArray8ToWasm0(arg, malloc) { const ptr = malloc(arg.length * 1); getUint8Memory0().set(arg, ptr / 1); WASM_VECTOR_LEN = arg.length; return ptr;}
function handleError(f, args) { try { return f.apply(this, args); } catch (e) { wasm.__wbindgen_exn_store(addHeapObject(e)); }}/***/export class Comment {
static __wrap(ptr) { const obj = Object.create(Comment.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_comment_free(ptr); } /** * @param {string} content * @param {any | undefined} content_type */ before(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.comment_before(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ after(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.comment_after(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ replace(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.comment_replace(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** */ remove() { wasm.comment_remove(this.ptr); return this; } /** * @returns {boolean} */ get removed() { var ret = wasm.comment_removed(this.ptr); return ret !== 0; } /** * @returns {string} */ get text() { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); wasm.comment_text(retptr, this.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; return getStringFromWasm0(r0, r1); } finally { wasm.__wbindgen_add_to_stack_pointer(16); wasm.__wbindgen_free(r0, r1); } } /** * @param {string} text */ set text(text) { var ptr0 = passStringToWasm0(text, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.comment_set_text(this.ptr, ptr0, len0); }}/***/export class Doctype {
static __wrap(ptr) { const obj = Object.create(Doctype.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_doctype_free(ptr); } /** * @returns {any} */ get name() { var ret = wasm.doctype_name(this.ptr); return takeObject(ret); } /** * @returns {any} */ get publicId() { var ret = wasm.doctype_public_id(this.ptr); return takeObject(ret); } /** * @returns {any} */ get systemId() { var ret = wasm.doctype_system_id(this.ptr); return takeObject(ret); }}/***/export class DocumentEnd {
static __wrap(ptr) { const obj = Object.create(DocumentEnd.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_documentend_free(ptr); } /** * @param {string} content * @param {any | undefined} content_type */ append(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.documentend_append(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; }}/***/export class Element {
static __wrap(ptr) { const obj = Object.create(Element.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_element_free(ptr); } /** * @param {string} content * @param {any | undefined} content_type */ before(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_before(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ after(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_after(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ replace(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_replace(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** */ remove() { wasm.element_remove(this.ptr); return this; } /** * @returns {boolean} */ get removed() { var ret = wasm.element_removed(this.ptr); return ret !== 0; } /** * @returns {string} */ get tagName() { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); wasm.element_tag_name(retptr, this.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; return getStringFromWasm0(r0, r1); } finally { wasm.__wbindgen_add_to_stack_pointer(16); wasm.__wbindgen_free(r0, r1); } } /** * @param {string} name */ set tagName(name) { var ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_set_tag_name(this.ptr, ptr0, len0); } /** * @returns {any} */ get namespaceURI() { var ret = wasm.element_namespace_uri(this.ptr); return takeObject(ret); } /** * @returns {any} */ get attributes() { var ret = wasm.element_attributes(this.ptr); return takeObject(ret)[Symbol.iterator](); } /** * @param {string} name * @returns {any} */ getAttribute(name) { var ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; var ret = wasm.element_getAttribute(this.ptr, ptr0, len0); return takeObject(ret); } /** * @param {string} name * @returns {boolean} */ hasAttribute(name) { var ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; var ret = wasm.element_hasAttribute(this.ptr, ptr0, len0); return ret !== 0; } /** * @param {string} name * @param {string} value */ setAttribute(name, value) { var ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; var ptr1 = passStringToWasm0(value, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len1 = WASM_VECTOR_LEN; wasm.element_setAttribute(this.ptr, ptr0, len0, ptr1, len1); return this; } /** * @param {string} name */ removeAttribute(name) { var ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_removeAttribute(this.ptr, ptr0, len0); return this; } /** * @param {string} content * @param {any | undefined} content_type */ prepend(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_prepend(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ append(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_append(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ setInnerContent(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.element_setInnerContent(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** */ removeAndKeepContent() { wasm.element_removeAndKeepContent(this.ptr); return this; } /** * @param {any} handler */ onEndTag(handler) { wasm.element_onEndTag(this.ptr, addHeapObject(handler.bind(this))); }}/***/export class EndTag {
static __wrap(ptr) { const obj = Object.create(EndTag.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_endtag_free(ptr); } /** * @returns {string} */ get name() { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); wasm.endtag_name(retptr, this.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; return getStringFromWasm0(r0, r1); } finally { wasm.__wbindgen_add_to_stack_pointer(16); wasm.__wbindgen_free(r0, r1); } } /** * @param {string} name */ set name(name) { var ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.endtag_set_name(this.ptr, ptr0, len0); } /** * @param {string} content * @param {any | undefined} content_type */ before(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.endtag_before(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ after(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.endtag_after(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** */ remove() { wasm.endtag_remove(this.ptr); return this; }}/***/export class HTMLRewriter {
static __wrap(ptr) { const obj = Object.create(HTMLRewriter.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_htmlrewriter_free(ptr); } /** * @param {any} output_sink * @param {any | undefined} options */ constructor(output_sink, options) { try { var ret = wasm.htmlrewriter_new(addBorrowedObject(output_sink), isLikeNone(options) ? 0 : addHeapObject(options)); return HTMLRewriter.__wrap(ret); } finally { heap[stack_pointer++] = undefined; } } /** * @param {string} selector * @param {any} handlers */ on(selector, handlers) { var ptr0 = passStringToWasm0(selector, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.htmlrewriter_on(this.ptr, ptr0, len0, addHeapObject(handlers)); return this; } /** * @param {any} handlers */ onDocument(handlers) { wasm.htmlrewriter_onDocument(this.ptr, addHeapObject(handlers)); return this; } /** * @param {Uint8Array} chunk */ async write(chunk) { var ptr0 = passArray8ToWasm0(chunk, wasm.__wbindgen_malloc); var len0 = WASM_VECTOR_LEN; await wrap(this, wasm.htmlrewriter_write, this.ptr, ptr0, len0) } /** */ async end() { await wrap(this, wasm.htmlrewriter_end, this.ptr) } /** * @returns {number} */ get asyncifyStackPtr() { var ret = wasm.htmlrewriter_asyncify_stack_ptr(this.ptr); return ret; }}/***/export class TextChunk {
static __wrap(ptr) { const obj = Object.create(TextChunk.prototype); obj.ptr = ptr;
return obj; }
__destroy_into_raw() { const ptr = this.ptr; this.ptr = 0;
return ptr; }
free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_textchunk_free(ptr); } /** * @param {string} content * @param {any | undefined} content_type */ before(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.textchunk_before(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ after(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.textchunk_after(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** * @param {string} content * @param {any | undefined} content_type */ replace(content, content_type) { var ptr0 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; wasm.textchunk_replace(this.ptr, ptr0, len0, isLikeNone(content_type) ? 0 : addHeapObject(content_type)); return this; } /** */ remove() { wasm.textchunk_remove(this.ptr); return this; } /** * @returns {boolean} */ get removed() { var ret = wasm.textchunk_removed(this.ptr); return ret !== 0; } /** * @returns {string} */ get text() { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); wasm.textchunk_text(retptr, this.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; return getStringFromWasm0(r0, r1); } finally { wasm.__wbindgen_add_to_stack_pointer(16); wasm.__wbindgen_free(r0, r1); } } /** * @returns {boolean} */ get lastInTextNode() { var ret = wasm.textchunk_last_in_text_node(this.ptr); return ret !== 0; }}
async function load(module, imports) { if (typeof Response === 'function' && module instanceof Response) { if (typeof WebAssembly.instantiateStreaming === 'function') { try { return await WebAssembly.instantiateStreaming(module, imports);
} catch (e) { if (module.headers.get('Content-Type') != 'application/wasm') { console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
} else { throw e; } } }
const bytes = await module.arrayBuffer(); return await WebAssembly.instantiate(bytes, imports);
} else { const instance = await WebAssembly.instantiate(module, imports);
if (instance instanceof WebAssembly.Instance) { return { instance, module };
} else { return instance; } }}
async function init(input) { if (typeof input === 'undefined') { throw new Error('Initializing html_rewriter needs input') } const imports = {}; imports.wbg = {}; imports.wbg.__wbindgen_object_drop_ref = function(arg0) { takeObject(arg0); }; imports.wbg.__wbg_html_cd9a0f328493678b = function(arg0) { var ret = getObject(arg0).html; return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0; }; imports.wbg.__wbindgen_string_new = function(arg0, arg1) { var ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); }; imports.wbg.__wbg_documentend_new = function(arg0) { var ret = DocumentEnd.__wrap(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_awaitPromise_39a1101fd8518869 = function(arg0, arg1) { awaitPromise(arg0, getObject(arg1)); }; imports.wbg.__wbindgen_object_clone_ref = function(arg0) { var ret = getObject(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_element_c38470ed972aea27 = function(arg0) { var ret = getObject(arg0).element; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_comments_ba86bc03331d9378 = function(arg0) { var ret = getObject(arg0).comments; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_text_7800bf26cb443911 = function(arg0) { var ret = getObject(arg0).text; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_doctype_ac58c0964a59b61b = function(arg0) { var ret = getObject(arg0).doctype; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_comments_94d876f6c0502e82 = function(arg0) { var ret = getObject(arg0).comments; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_text_4606a16c30e4ae91 = function(arg0) { var ret = getObject(arg0).text; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_end_34efb9402eac8a4e = function(arg0) { var ret = getObject(arg0).end; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; imports.wbg.__wbg_element_new = function(arg0) { var ret = Element.__wrap(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_comment_new = function(arg0) { var ret = Comment.__wrap(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_textchunk_new = function(arg0) { var ret = TextChunk.__wrap(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_doctype_new = function(arg0) { var ret = Doctype.__wrap(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_endtag_new = function(arg0) { var ret = EndTag.__wrap(arg0); return addHeapObject(ret); }; imports.wbg.__wbg_enableEsiTags_de6b91cc61a25874 = function(arg0) { var ret = getObject(arg0).enableEsiTags; return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0; }; imports.wbg.__wbg_String_60c4ba333b5ca1c6 = function(arg0, arg1) { var ret = String(getObject(arg1)); var ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }; imports.wbg.__wbg_new_4fee7e2900033464 = function() { var ret = new Array(); return addHeapObject(ret); }; imports.wbg.__wbg_push_ba9b5e3c25cff8f9 = function(arg0, arg1) { var ret = getObject(arg0).push(getObject(arg1)); return ret; }; imports.wbg.__wbg_call_6c4ea719458624eb = function() { return handleError(function (arg0, arg1, arg2) { var ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }, arguments) }; imports.wbg.__wbg_new_917809a3e20a4b00 = function(arg0, arg1) { var ret = new TypeError(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; imports.wbg.__wbg_instanceof_Promise_c6535fc791fcc4d2 = function(arg0) { var obj = getObject(arg0); var ret = (obj instanceof Promise) || (Object.prototype.toString.call(obj) === '[object Promise]'); return ret; }; imports.wbg.__wbg_buffer_89a8560ab6a3d9c6 = function(arg0) { var ret = getObject(arg0).buffer; return addHeapObject(ret); }; imports.wbg.__wbg_newwithbyteoffsetandlength_e45d8b33c02dc3b5 = function(arg0, arg1, arg2) { var ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; imports.wbg.__wbg_new_bd2e1d010adb8a1a = function(arg0) { var ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }; imports.wbg.__wbindgen_debug_string = function(arg0, arg1) { var ret = debugString(getObject(arg1)); var ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }; imports.wbg.__wbindgen_throw = function(arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }; imports.wbg.__wbindgen_rethrow = function(arg0) { throw takeObject(arg0); }; imports.wbg.__wbindgen_memory = function() { var ret = wasm.memory; return addHeapObject(ret); };
if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) { input = fetch(input); }


const { instance, module } = await load(await input, imports);
wasm = instance.exports; setWasmExports(wasm) init.__wbindgen_wasm_module = module;
return wasm;}
export default init;