diff --git a/packages/client/src/scripts/aiscript/api.ts b/packages/client/src/scripts/aiscript/api.ts index 01b8fd05f..b59c699cd 100644 --- a/packages/client/src/scripts/aiscript/api.ts +++ b/packages/client/src/scripts/aiscript/api.ts @@ -39,5 +39,18 @@ export function createAiScriptEnv(opts) { utils.assertString(key); return utils.jsToVal(JSON.parse(localStorage.getItem('aiscript:' + opts.storageKey + ':' + key.value))); }), + 'Mk:fetch': values.FN_NATIVE(async ([resource, init]) => { + utils.assertString(resource); + const response = init ? await fetch(resource.value, utils.valToJs(init)) : await fetch(resource.value); + const returnObject = { + status: response.status, + headers: new Object(), + body: await response.text(), + }; + response.headers.forEach((value, key) => { + returnObject.headers[key] = value; + }); + return utils.jsToVal(returnObject); + }), }; }