diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c4134bdef05..49a58383eb72 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -69,6 +69,7 @@ - Enhance: 「Moderation note」、「Add moderation note」をローカライズできるように - Enhance: プラグインのソースコードを確認・コピーできるように - Enhance: 細かなデザインの調整 +- Enhance: Mk:apiの第三引数に`null`を渡せるように - Fix: サーバー情報画面(`/instance-info/{domain}`)でブロックができないのを修正 - Fix: 未読のお知らせの「わかった」をクリック・タップしてもその場で「わかった」が消えない問題を修正 - Fix: iOSで画面を回転させるとテキストサイズが変わる問題を修正 diff --git a/packages/frontend/src/scripts/aiscript/api.ts b/packages/frontend/src/scripts/aiscript/api.ts index 0bb9185936b7..b86c1bdac3ff 100644 --- a/packages/frontend/src/scripts/aiscript/api.ts +++ b/packages/frontend/src/scripts/aiscript/api.ts @@ -35,11 +35,13 @@ export function createAiScriptEnv(opts) { }), 'Mk:api': values.FN_NATIVE(async ([ep, param, token]) => { if (token) { - utils.assertString(token); - // バグがあればundefinedもあり得るため念のため - if (typeof token.value !== 'string') throw new Error('invalid token'); + if (token.type !== 'null') { + utils.assertString(token); + // バグがあればundefinedもあり得るため念のため + if (typeof token.value !== 'string') throw new Error('invalid token'); + } } - return os.api(ep.value, utils.valToJs(param), token ? token.value : (opts.token ?? null)).then(res => { + return os.api(ep.value, utils.valToJs(param), (token ? token.value : opts.token) ?? null).then(res => { return utils.jsToVal(res); }, err => { return values.ERROR('request_failed', utils.jsToVal(err));