@@ -1044,6 +1044,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
10441044 * @param {string= } [defaultTranslationText=undefined] the optional default translation text that is written as
10451045 * as default text in case it is not found in any configured language
10461046 * @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)
10471048 * @returns {object } promise
10481049 */
10491050 this . $get = function ( $log , $injector , $rootScope , $q ) {
@@ -1056,7 +1057,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
10561057 fallbackIndex ,
10571058 startFallbackIteration ;
10581059
1059- var $translate = function ( translationId , interpolateParams , interpolationId , defaultTranslationText , forceLanguage ) {
1060+ var $translate = function ( translationId , interpolateParams , interpolationId , defaultTranslationText , forceLanguage , sanitizeStrategy ) {
10601061 if ( ! $uses && $preferredLanguage ) {
10611062 $uses = $preferredLanguage ;
10621063 }
@@ -1085,7 +1086,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
10851086 deferred . resolve ( [ translationId , value ] ) ;
10861087 } ;
10871088 // 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 ) ;
10891090 return deferred . promise ;
10901091 } ;
10911092 for ( var i = 0 , c = translationIds . length ; i < c ; i ++ ) {
@@ -1142,14 +1143,14 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
11421143 // no promise to wait for? okay. Then there's no loader registered
11431144 // nor is a one pending for language that comes from storage.
11441145 // 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 ) ;
11461147 } else {
11471148 var promiseResolved = function ( ) {
11481149 // $uses may have changed while waiting
11491150 if ( ! forceLanguage ) {
11501151 uses = $uses ;
11511152 }
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 ) ;
11531154 } ;
11541155 promiseResolved . displayName = 'promiseResolved' ;
11551156
@@ -1563,7 +1564,7 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
15631564 // If using link, rerun $translate with linked translationId and return it
15641565 if ( translation . substr ( 0 , 2 ) === '@:' ) {
15651566
1566- $translate ( translation . substr ( 2 ) , interpolateParams , interpolationId , defaultTranslationText , uses )
1567+ $translate ( translation . substr ( 2 ) , interpolateParams , interpolationId , defaultTranslationText , uses , sanitizeStrategy )
15671568 . then ( deferred . resolve , deferred . reject ) ;
15681569 } else {
15691570 //
0 commit comments