import * as url from "ext:deno_url/00_url.js";
import * as urlPattern from "ext:deno_url/01_urlpattern.js";
import * as timers from "ext:deno_web/02_timers.js";
import * as location from "ext:deno_web/12_location.js";
import * as webidl from "ext:deno_webidl/00_webidl.js";
import * as console2 from "ext:deno_console/01_console.js";
import * as infra from "ext:deno_web/00_infra.js";
import * as dom_ex from "ext:deno_web/01_dom_exception.js";
import * as mimesniff from "ext:deno_web/01_mimesniff.js";
import * as event from "ext:deno_web/02_event.js";
import * as sc from "ext:deno_web/02_structured_clone.js";
import * as ab from "ext:deno_web/03_abort_signal.js";
import * as gi from "ext:deno_web/04_global_interfaces.js";
import * as b64 from "ext:deno_web/05_base64.js";
import * as streams from "ext:deno_web/06_streams.js";
import * as te from "ext:deno_web/08_text_encoding.js";
import * as file from "ext:deno_web/09_file.js";
import * as filereader from "ext:deno_web/10_filereader.js";
import * as mp from "ext:deno_web/13_message_port.js";
import * as cpp from "ext:deno_web/14_compression.js";
import * as perf from "ext:deno_web/15_performance.js";
import * as webSocket from "ext:deno_websocket/01_websocket.js";
import * as ws2 from "ext:deno_websocket/02_websocketstream.js";
import * as f20 from "ext:deno_fetch/20_headers.js";
import * as f21 from "ext:deno_fetch/21_formdata.js";
import * as f22 from "ext:deno_fetch/22_body.js";
import * as f223 from "ext:deno_fetch/22_http_client.js";
import * as f23 from "ext:deno_fetch/23_request.js";
import * as f233 from "ext:deno_fetch/23_response.js";
import * as f26 from "ext:deno_fetch/26_fetch.js";
import * as f27 from "ext:deno_fetch/27_eventsource.js";
import * as crypto from "ext:deno_crypto/00_crypto.js";
import * as w16 from "ext:deno_web/16_image_data.js";
import {nonEnumerable, getterOnly, writable, readOnly} from "ext:pjs_extension/src/js/06_util.js";
const { core } = Deno;
const { ops } = core;
const {
Error,
ObjectDefineProperty,
ObjectDefineProperties,
ObjectSetPrototypeOf,
ObjectFreeze,
StringPrototypeSplit,
} = globalThis.__bootstrap.primordials;
function argsToMessage(...args) {
return args.map((arg) => JSON.stringify(arg)).join(" ");
}
const console = {
log: (...args) => {
core.print(`[out]: ${argsToMessage(...args)}\n`, false);
},
error: (...args) => {
core.print(`[err]: ${args}\n`, true);
core.print(`[err]: ${argsToMessage(...args)}\n`, true);
},
};
globalThis.console.log = console.log;
globalThis.console.error = console.error;
const globalScope = {
URL: nonEnumerable(url.URL),
URLPatter: nonEnumerable(urlPattern.URLPattern),
location: location.locationDescriptor,
clearInterval: writable(timers.clearInterval),
clearTimeout: writable(timers.clearTimeout),
setInterval: writable(timers.setInterval),
setTimeout: writable(timers.setTimeout),
CryptoKey: nonEnumerable(crypto.CryptoKey),
crypto: readOnly(crypto.crypto),
Crypto: nonEnumerable(crypto.Crypto),
SubtleCrypto: nonEnumerable(crypto.SubtleCrypto),
location: nonEnumerable(location.locationDescriptor),
WebSocket: nonEnumerable(webSocket.WebSocket),
}
ObjectDefineProperties(globalThis, globalScope);
import * as _ from "ext:pjs_extension/src/js/07.js"
delete globalThis.__bootstrap;