equinox-web-components
Version:
Equinox design for the web using StencilJS
32 lines (30 loc) • 893 B
JavaScript
const getAbbr = (str) => {
if (str) {
return str.split(' ').length >= 2 ? str.match(/\b(\w)/g).join('') : str.substr(0, 2);
}
else {
return "";
}
};
const deserializeJSON = (json, component = 'unknown') => {
try {
json = json.split(""").join("\"");
return JSON.parse(json);
}
catch (e) {
console.log(json, e);
alert(`Error while trying to parse JSON in ${component} component`);
}
};
const getPath = (c, name, v, currentPath = "root", t = currentPath) => {
for (const i in c) {
if (i == name && c[i] == v) {
t = currentPath;
}
else if (typeof c[i] == "object") {
return getPath(c[i], name, v, currentPath + "." + i, t);
}
}
return t + "." + name;
};
export { getPath as a, deserializeJSON as d, getAbbr as g };