change load save arg toAccount in option

This commit is contained in:
Fairy-Phy 2023-11-13 19:08:47 +09:00
parent 2c6fa13a2c
commit 3e92930a75
No known key found for this signature in database
GPG Key ID: 53E58673D5961DB5
2 changed files with 17 additions and 5 deletions

View File

@ -18,7 +18,7 @@
- Feat: プラグインのスクリプトとデータを端末間で同期をできるようになりました
- 既存のプラグインはローカルに保存されています。
- ローカルのプラグインはプラグインの管理にあるボタンからアカウントに移動できます。
- `Mk:load`と`Mk:save`に引数`toAccount?: bool`が追加され、`true`にするとアカウントでデータを共有できます。(デフォルトは`false`)
- `Mk:load`と`Mk:save`の引数にオプションオブジェクト`option?: { toAccount?: bool }`が追加され、`true`にするとアカウントでデータを共有できます。(デフォルトは`false`)
### Client
- Fix: アイコンデコレーションが複数の場所で見切れている問題を修正

View File

@ -60,18 +60,30 @@ export function createAiScriptEnv(opts: { token: string; scriptData: ScriptData;
return values.ERROR('request_failed', utils.jsToVal(err));
});
}),
'Mk:save': values.FN_NATIVE(async ([key, value, toAccount]) => {
'Mk:save': values.FN_NATIVE(async ([key, value, option]) => {
utils.assertString(key);
const saveToAccount = toAccount ? toAccount.value : false;
if (option) {
utils.assertObject(option);
if (option.value.toAccount) {
utils.assertBoolean(option.value.toAccount);
}
}
const saveToAccount = option && option.value.toAccount ? option.value.toAccount.value : false;
return saveScriptStorage(saveToAccount, opts.scriptData, key.value, utils.valToJs(value)).then(() => {
return values.NULL;
}, err => {
return values.ERROR('request_failed', utils.jsToVal(err));
});
}),
'Mk:load': values.FN_NATIVE(async ([key, toAccount]) => {
'Mk:load': values.FN_NATIVE(async ([key, option]) => {
utils.assertString(key);
const loadToAccount = toAccount ? toAccount.value : false;
if (option) {
utils.assertObject(option);
if (option.value.toAccount) {
utils.assertBoolean(option.value.toAccount);
}
}
const loadToAccount = option && option.value.toAccount ? option.value.toAccount.value : false;
return loadScriptStorage(loadToAccount, opts.scriptData, key.value).then(res => {
return utils.jsToVal(res);
}, err => {