in ui-modules/utils/icon-generator/icon-generator.js [72:98]
export function iconGeneratorPipe(iconGenerator) {
return function (input, opts) {
let field, doNotAutogenerate=false;
if (opts) {
if (typeof opts === 'string') {
field = opts;
} else {
field = opts.field;
doNotAutogenerate = opts.doNotAutogenerate;
}
}
let generateFrom = input;
if (input && typeof(input) === 'object') {
if (input.hasOwnProperty('iconUrl') && input.iconUrl) {
return input.iconUrl;
} else if (input.hasOwnProperty('links') && input.links.hasOwnProperty('iconUrl') && input.links.iconUrl) {
return input.links.iconUrl;
} else if (input.hasOwnProperty(field || 'id')) {
generateFrom = input[field || 'id'];
}
}
if (doNotAutogenerate) {
return null;
}
return iconGenerator(generateFrom);
}
}