mirror of
https://github.com/mickael-kerjean/filestash.git
synced 2024-04-21 12:32:08 +00:00
chore (refactoring): error page
This commit is contained in:
@@ -7,7 +7,6 @@ export default function(opts) {
|
||||
if (!opts.headers) opts.headers = {};
|
||||
opts.headers["X-Requested-With"] = "XmlHttpRequest";
|
||||
return ajax({ withCredentials: true, ...opts, responseType: "text" }).pipe(
|
||||
rxjs.catchError((err) => rxjs.throwError(processError(err.xhr, err))),
|
||||
rxjs.map((res) => {
|
||||
const result = res.xhr.responseText;
|
||||
if (opts.responseType === "json") {
|
||||
@@ -18,7 +17,8 @@ export default function(opts) {
|
||||
res.responseJSON = json;
|
||||
}
|
||||
return res;
|
||||
})
|
||||
}),
|
||||
rxjs.catchError((err) => rxjs.throwError(processError(err.xhr, err))),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
import { createElement } from "../../lib/skeleton/index.js";
|
||||
import { createElement, createRender } from "../../lib/skeleton/index.js";
|
||||
import rxjs, { effect, applyMutation } from "../../lib/rx.js";
|
||||
import { qs, qsa } from "../../lib/dom.js";
|
||||
import { createForm, mutateForm } from "../../lib/form.js";
|
||||
import { formTmpl } from "../../components/form.js";
|
||||
import { generateSkeleton } from "../../components/skeleton.js";
|
||||
import { get as getConfig } from "../../model/config.js";
|
||||
import ctrlError from "../ctrl_error.js";
|
||||
|
||||
import { get as getAdminConfig, save as saveConfig, initConfig } from "./model_config.js";
|
||||
import { renderLeaf, useForm$, formObjToJSON$ } from "./helper_form.js";
|
||||
@@ -60,6 +61,7 @@ export default AdminHOC(async function(render) {
|
||||
)),
|
||||
reshapeConfigBeforeSave,
|
||||
saveConfig(),
|
||||
rxjs.catchError(ctrlError(createRender(qs(document.body, "[role=\"main\"]")))),
|
||||
));
|
||||
});
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { createElement } from "../../lib/skeleton/index.js";
|
||||
import { createElement, createRender } from "../../lib/skeleton/index.js";
|
||||
import rxjs, { effect, stateMutation } from "../../lib/rx.js";
|
||||
import { qs } from "../../lib/dom.js";
|
||||
|
||||
@@ -52,7 +52,7 @@ export default function(ctrl) {
|
||||
render($page);
|
||||
|
||||
// feature: setup the childrens
|
||||
ctrl(($node) => qs($page, "[data-bind=\"admin\"]").appendChild($node));
|
||||
ctrl(createRender(qs($page, "[data-bind=\"admin\"]")));
|
||||
|
||||
// feature: display the release version
|
||||
effect(getRelease().pipe(
|
||||
|
||||
@@ -28,8 +28,6 @@ export default function(render) {
|
||||
effect(getState$().pipe(
|
||||
rxjs.map(({ error }) => error),
|
||||
rxjs.filter((error) => !!error),
|
||||
rxjs.map(ctrlError),
|
||||
rxjs.tap((fn) => fn(render))
|
||||
));
|
||||
|
||||
// feature2: render the filesystem
|
||||
|
||||
Reference in New Issue
Block a user