@scalar/api-client
Version:
the open source API testing client
37 lines (36 loc) • 955 B
JavaScript
import { objectKeys as l } from "@scalar/helpers/object/object-keys";
import { AVAILABLE_CLIENTS as s, GROUPED_CLIENTS as c } from "@scalar/types/snippetz";
const A = (o) => {
if (o === !0)
return [];
if (!o || Array.isArray(o) && o.length === 0)
return s;
const t = new Set(s);
if (Array.isArray(o))
for (const e of o) {
const f = c[e];
if (f)
for (const r of f)
t.delete(`${e}/${r}`);
else if (e.includes("/"))
t.delete(e);
else
for (const r of l(c))
t.delete(`${r}/${e}`);
}
else if (typeof o == "object") {
for (const [e, f] of Object.entries(o))
if (f === !0) {
const r = c[e];
if (r)
for (const i of r)
t.delete(`${e}/${i}`);
} else if (Array.isArray(f))
for (const r of f)
t.delete(r), t.delete(`${e}/${r}`);
}
return Array.from(t);
};
export {
A as mapHiddenClientsConfig
};