' +
'' +
'*' +
'{{value}}' +
'
' +
'',
link: function (scope) {
var expression = /(https?:\/\/(?:www\.|(?!www))[^\s\.]+\.[^\s]{2,}|www\.[^\s]+\.[^\s]{2,})/gi;
var regex = new RegExp(expression);
$translate(['toggle.visibility', 'copy', 'copied']).then(function (translations) {
scope.tggltxt = translations['toggle.visibility'];
scope.copy_msg = translations['copy'];
});
scope.$watch("value", function () {
if (scope.value) {
if (scope.secret) {
scope.valueVisible = false;
}
if (scope.value.match(regex)) {
scope.isLink = true;
}
}
});
if (!scope.toggle) {
if (scope.secret) {
scope.toggle = true;
}
}
var timer;
scope.onSuccess = function () {
scope.copy_msg = $translate.instant('copied') ;
$timeout.cancel(timer);
timer = $timeout(function () {
scope.copy_msg = $translate.instant('copy');
}, 5000);
};
scope.valueVisible = true;
scope.toggleVisibility = function () {
scope.valueVisible = !scope.valueVisible;
};
}
};
}]);
}());