cozy-iiif
Version:
A developer-friendly collection of abstractions and utilities built on top of @iiif/presentation-3 and @iiif/parser
29 lines (28 loc) • 624 B
JavaScript
const c = (e, r) => {
let t = e[r];
return t || (t = e[`@${r}`]), t;
}, o = (e, r = "en") => {
if (typeof e == "string") return e;
const t = e[r];
if (t)
return t[0];
{
const n = Object.values(e).reduce((a, s) => Array.isArray(s) ? [...a, ...s] : [...a, s], []);
return n.length > 0 ? n[0] : void 0;
}
}, i = (e) => (r = "en") => {
const t = c(e, "label");
return t ? o(t, r) : void 0;
}, u = (e) => (r) => {
const t = c(e, "metadata");
return t ? t.map(({ label: n, value: a }) => ({
label: o(n, r),
value: o(a, r)
})) : [];
};
export {
u as a,
i as b,
o as c,
c as g
};