2018-06-15 17:03:24 +02:00
|
|
|
import RestAdapter from "discourse/adapters/rest";
|
2017-04-12 10:52:52 -04:00
|
|
|
|
2023-03-17 12:25:05 +00:00
|
|
|
export default class Theme extends RestAdapter {
|
|
|
|
jsonMode = true;
|
2017-04-12 10:52:52 -04:00
|
|
|
basePath() {
|
|
|
|
return "/admin/";
|
2023-03-17 12:25:05 +00:00
|
|
|
}
|
2017-04-12 10:52:52 -04:00
|
|
|
|
|
|
|
afterFindAll(results) {
|
|
|
|
let map = {};
|
2020-09-04 13:42:47 +02:00
|
|
|
results.forEach((theme) => {
|
2018-06-15 17:03:24 +02:00
|
|
|
map[theme.id] = theme;
|
|
|
|
});
|
2020-09-04 13:42:47 +02:00
|
|
|
results.forEach((theme) => {
|
2017-04-12 10:52:52 -04:00
|
|
|
let mapped = theme.get("child_themes") || [];
|
2020-09-04 13:42:47 +02:00
|
|
|
mapped = mapped.map((t) => map[t.id]);
|
2017-04-12 10:52:52 -04:00
|
|
|
theme.set("childThemes", mapped);
|
2019-01-23 09:20:13 +00:00
|
|
|
|
|
|
|
let mappedParents = theme.get("parent_themes") || [];
|
2020-09-04 13:42:47 +02:00
|
|
|
mappedParents = mappedParents.map((t) => map[t.id]);
|
2019-01-23 09:20:13 +00:00
|
|
|
theme.set("parentThemes", mappedParents);
|
2017-04-12 10:52:52 -04:00
|
|
|
});
|
|
|
|
return results;
|
2023-03-17 12:25:05 +00:00
|
|
|
}
|
|
|
|
}
|