in ui-modules/app-inspector/app/components/config-sensor-table/config-sensor-table.directive.js [143:163]
export function brLinkyFilter($filter, $state, $sanitize) {
// render links as html, and everything else as not html.
return function(input, key, target, attributes) {
if (input == null) {
return '';
} else if (angular.isObject(key) && key.isObject) {
return asJsonIfJson(input, false, true, $sanitize) || $filter('linky')(angular.toJson(input), target, attributes);
} else if (!angular.isString(input)) {
return asJsonIfJson(input, false, false, $sanitize) || $filter('linky')(angular.toJson(input), target, attributes);
} else if (angular.isObject(key) && angular.isString(key.name) && (key.name.indexOf('ssh') > -1 || isSensitiveFieldName(key.name))) {
return input;
} else if (angular.isObject(key) && key.links && key.links.hasOwnProperty('action:open')) {
let matches = key.links['action:open'].match(/\#\/v1\/applications\/([^\/]+)\/entities\/([^\/]+)/i);
return matches !== null ?
$sanitize('<a href="' + $state.href('main.inspect.summary', {applicationId: matches[1], entityId: matches[2]}) + '">' + input + '</a>') :
$filter('linky')(input, target, attributes);
} else {
return asJsonIfJson(input, true, false, $sanitize) || $filter('linky')(input, target, attributes);
}
}
}