@@ -1044,6 +1044,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
1044
1044
* @param {string= } [defaultTranslationText=undefined] the optional default translation text that is written as
1045
1045
* as default text in case it is not found in any configured language
1046
1046
* @param {string= } [forceLanguage=false] A language to be used instead of the current language
1047
+ * @param {string= } [sanitizeStrategy=undefined] force sanitize strategy for this call instead of using the configured one (use default unless set)
1047
1048
* @returns {object } promise
1048
1049
*/
1049
1050
this . $get = function ( $log , $injector , $rootScope , $q ) {
@@ -1056,7 +1057,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
1056
1057
fallbackIndex ,
1057
1058
startFallbackIteration ;
1058
1059
1059
- var $translate = function ( translationId , interpolateParams , interpolationId , defaultTranslationText , forceLanguage ) {
1060
+ var $translate = function ( translationId , interpolateParams , interpolationId , defaultTranslationText , forceLanguage , sanitizeStrategy ) {
1060
1061
if ( ! $uses && $preferredLanguage ) {
1061
1062
$uses = $preferredLanguage ;
1062
1063
}
@@ -1085,7 +1086,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
1085
1086
deferred . resolve ( [ translationId , value ] ) ;
1086
1087
} ;
1087
1088
// we don't care whether the promise was resolved or rejected; just store the values
1088
- $translate ( translationId , interpolateParams , interpolationId , defaultTranslationText , forceLanguage ) . then ( regardless , regardless ) ;
1089
+ $translate ( translationId , interpolateParams , interpolationId , defaultTranslationText , forceLanguage , sanitizeStrategy ) . then ( regardless , regardless ) ;
1089
1090
return deferred . promise ;
1090
1091
} ;
1091
1092
for ( var i = 0 , c = translationIds . length ; i < c ; i ++ ) {
@@ -1142,14 +1143,14 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
1142
1143
// no promise to wait for? okay. Then there's no loader registered
1143
1144
// nor is a one pending for language that comes from storage.
1144
1145
// We can just translate.
1145
- determineTranslation ( translationId , interpolateParams , interpolationId , defaultTranslationText , uses ) . then ( deferred . resolve , deferred . reject ) ;
1146
+ determineTranslation ( translationId , interpolateParams , interpolationId , defaultTranslationText , uses , sanitizeStrategy ) . then ( deferred . resolve , deferred . reject ) ;
1146
1147
} else {
1147
1148
var promiseResolved = function ( ) {
1148
1149
// $uses may have changed while waiting
1149
1150
if ( ! forceLanguage ) {
1150
1151
uses = $uses ;
1151
1152
}
1152
- determineTranslation ( translationId , interpolateParams , interpolationId , defaultTranslationText , uses ) . then ( deferred . resolve , deferred . reject ) ;
1153
+ determineTranslation ( translationId , interpolateParams , interpolationId , defaultTranslationText , uses , sanitizeStrategy ) . then ( deferred . resolve , deferred . reject ) ;
1153
1154
} ;
1154
1155
promiseResolved . displayName = 'promiseResolved' ;
1155
1156
@@ -1563,7 +1564,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
1563
1564
// If using link, rerun $translate with linked translationId and return it
1564
1565
if ( translation . substr ( 0 , 2 ) === '@:' ) {
1565
1566
1566
- $translate ( translation . substr ( 2 ) , interpolateParams , interpolationId , defaultTranslationText , uses )
1567
+ $translate ( translation . substr ( 2 ) , interpolateParams , interpolationId , defaultTranslationText , uses , sanitizeStrategy )
1567
1568
. then ( deferred . resolve , deferred . reject ) ;
1568
1569
} else {
1569
1570
//
0 commit comments