// retoor <retoor@molodetz.nl>
|
|
|
|
import { Http } from "./Http.js";
|
|
import { Toast } from "./Toast.js";
|
|
|
|
export class OptimisticAction {
|
|
async submit(url, params, errorTarget, render) {
|
|
try {
|
|
const result = await Http.sendForm(url, params);
|
|
if (render) render(result);
|
|
return result;
|
|
} catch (error) {
|
|
console.error("optimistic action failed", error);
|
|
if (errorTarget) Toast.flash(errorTarget, "Error", 1500);
|
|
return null;
|
|
}
|
|
}
|
|
}
|