@opengis/fastify-table
Version:
core-plugins
34 lines (33 loc) • 1.07 kB
JavaScript
import config from "../../../../config.js";
function substringObject(data, substr) {
if (typeof data === "boolean")
return data;
if (!data)
return "null";
// array string
if (typeof data === "string")
return data.substring(0, substr);
// array object
return Object.keys(data).reduce((acc, curr) => {
if (Array.isArray(data[curr])) {
return { [curr]: processObject(data[curr], substr) };
}
return { ...acc, [curr]: processObject(data[curr], substr) };
}, {});
}
function processObject(obj, substr) {
// root string
if (typeof obj === "string")
return obj.substring(0, substr);
// root array / object
return Array.isArray(obj)
? obj.map((el) => substringObject(el, substr))
: substringObject(obj, substr);
}
export default async function apiConfig({ user }) {
if (config.local || (config.debug && user?.user_type?.includes?.("admin"))) {
return config;
}
const reductConfig = processObject(config, 3);
return reductConfig;
}