Current section
Files
Jump to
Current section
Files
src/gossamer.ffi.mjs
// src/gossamer.ffi.ts
import { toRequestInit } from "./gossamer/request.ffi.mjs";
import { toArray } from "./utils/list.ffi.mjs";
import { toResult } from "./utils/result.ffi.mjs";
var structured_clone = (value) => {
return toResult.fromThrows(() => globalThis.structuredClone(value));
};
var atob = (encoded) => {
return toResult.fromThrows(() => globalThis.atob(encoded));
};
var btoa = (data) => {
return toResult.fromThrows(() => globalThis.btoa(data));
};
var clear_interval = (id) => {
globalThis.clearInterval(id);
};
var clear_timeout = (id) => {
globalThis.clearTimeout(id);
};
var queue_microtask = (func) => {
globalThis.queueMicrotask(func);
};
var set_interval = (delay, callback) => {
return Number(globalThis.setInterval(callback, delay));
};
var set_timeout = (delay, callback) => {
return Number(globalThis.setTimeout(callback, delay));
};
var user_agent = () => {
return globalThis.navigator.userAgent;
};
var fetch_ = (url) => {
return toResult.fromPromise(globalThis.fetch(url));
};
var fetch_url = (url) => {
return toResult.fromPromise(globalThis.fetch(url));
};
var fetch_with = (url, init) => {
return toResult.fromPromise(
globalThis.fetch(url, toRequestInit(toArray(init)))
);
};
var fetch_url_with = (url, init) => {
return toResult.fromPromise(
globalThis.fetch(url, toRequestInit(toArray(init)))
);
};
var fetch_request = (request) => {
return toResult.fromPromise(globalThis.fetch(request));
};
var fetch_request_with = (request, init) => {
return toResult.fromPromise(
globalThis.fetch(request, toRequestInit(toArray(init)))
);
};
export {
atob,
btoa,
clear_interval,
clear_timeout,
fetch_,
fetch_request,
fetch_request_with,
fetch_url,
fetch_url_with,
fetch_with,
queue_microtask,
set_interval,
set_timeout,
structured_clone,
user_agent
};