2015-08-17 17:00:26 -07:00
/ * *
2018-11-23 12:29:20 +00:00
* DO NOT EDIT THIS FILE .
* See the following change record for more information ,
* https : //www.drupal.org/node/2815083
* @ preserve
* * /
2015-08-17 17:00:26 -07:00
2018-11-23 12:29:20 +00:00
window . Drupal = { behaviors : { } , locale : { } } ;
2015-08-17 17:00:26 -07:00
2017-04-13 15:53:35 +01:00
( function ( Drupal , drupalSettings , drupalTranslations ) {
2015-09-04 13:20:09 -07:00
Drupal . throwError = function ( error ) {
2018-11-23 12:29:20 +00:00
setTimeout ( function ( ) {
throw error ;
} , 0 ) ;
2015-09-04 13:20:09 -07:00
} ;
2015-08-17 17:00:26 -07:00
Drupal . attachBehaviors = function ( context , settings ) {
context = context || document ;
settings = settings || drupalSettings ;
var behaviors = Drupal . behaviors ;
2018-11-23 12:29:20 +00:00
Object . keys ( behaviors || { } ) . forEach ( function ( i ) {
if ( typeof behaviors [ i ] . attach === 'function' ) {
2015-08-17 17:00:26 -07:00
try {
behaviors [ i ] . attach ( context , settings ) ;
2018-11-23 12:29:20 +00:00
} catch ( e ) {
2015-09-04 13:20:09 -07:00
Drupal . throwError ( e ) ;
2015-08-17 17:00:26 -07:00
}
}
2018-11-23 12:29:20 +00:00
} ) ;
2015-08-17 17:00:26 -07:00
} ;
Drupal . detachBehaviors = function ( context , settings , trigger ) {
context = context || document ;
settings = settings || drupalSettings ;
trigger = trigger || 'unload' ;
var behaviors = Drupal . behaviors ;
2018-11-23 12:29:20 +00:00
Object . keys ( behaviors || { } ) . forEach ( function ( i ) {
if ( typeof behaviors [ i ] . detach === 'function' ) {
2015-08-17 17:00:26 -07:00
try {
behaviors [ i ] . detach ( context , settings , trigger ) ;
2018-11-23 12:29:20 +00:00
} catch ( e ) {
2015-09-04 13:20:09 -07:00
Drupal . throwError ( e ) ;
2015-08-17 17:00:26 -07:00
}
}
2018-11-23 12:29:20 +00:00
} ) ;
2015-08-17 17:00:26 -07:00
} ;
Drupal . checkPlain = function ( str ) {
2018-11-23 12:29:20 +00:00
str = str . toString ( ) . replace ( /&/g , '&' ) . replace ( /</g , '<' ) . replace ( />/g , '>' ) . replace ( /"/g , '"' ) . replace ( /'/g , ''' ) ;
2015-08-17 17:00:26 -07:00
return str ;
} ;
Drupal . formatString = function ( str , args ) {
var processedArgs = { } ;
2018-11-23 12:29:20 +00:00
Object . keys ( args || { } ) . forEach ( function ( key ) {
switch ( key . charAt ( 0 ) ) {
case '@' :
processedArgs [ key ] = Drupal . checkPlain ( args [ key ] ) ;
break ;
case '!' :
processedArgs [ key ] = args [ key ] ;
break ;
default :
processedArgs [ key ] = Drupal . theme ( 'placeholder' , args [ key ] ) ;
break ;
2015-08-17 17:00:26 -07:00
}
2018-11-23 12:29:20 +00:00
} ) ;
2015-08-17 17:00:26 -07:00
return Drupal . stringReplace ( str , processedArgs , null ) ;
} ;
Drupal . stringReplace = function ( str , args , keys ) {
if ( str . length === 0 ) {
return str ;
}
if ( ! Array . isArray ( keys ) ) {
2018-11-23 12:29:20 +00:00
keys = Object . keys ( args || { } ) ;
2015-08-17 17:00:26 -07:00
2018-11-23 12:29:20 +00:00
keys . sort ( function ( a , b ) {
return a . length - b . length ;
} ) ;
2015-08-17 17:00:26 -07:00
}
if ( keys . length === 0 ) {
return str ;
}
var key = keys . pop ( ) ;
var fragments = str . split ( key ) ;
if ( keys . length ) {
for ( var i = 0 ; i < fragments . length ; i ++ ) {
fragments [ i ] = Drupal . stringReplace ( fragments [ i ] , args , keys . slice ( 0 ) ) ;
}
}
return fragments . join ( args [ key ] ) ;
} ;
Drupal . t = function ( str , args , options ) {
options = options || { } ;
options . context = options . context || '' ;
if ( typeof drupalTranslations !== 'undefined' && drupalTranslations . strings && drupalTranslations . strings [ options . context ] && drupalTranslations . strings [ options . context ] [ str ] ) {
str = drupalTranslations . strings [ options . context ] [ str ] ;
}
if ( args ) {
str = Drupal . formatString ( str , args ) ;
}
return str ;
} ;
Drupal . url = function ( path ) {
return drupalSettings . path . baseUrl + drupalSettings . path . pathPrefix + path ;
} ;
2015-09-04 13:20:09 -07:00
Drupal . url . toAbsolute = function ( url ) {
var urlParsingNode = document . createElement ( 'a' ) ;
try {
url = decodeURIComponent ( url ) ;
2018-11-23 12:29:20 +00:00
} catch ( e ) { }
2015-09-04 13:20:09 -07:00
urlParsingNode . setAttribute ( 'href' , url ) ;
return urlParsingNode . cloneNode ( false ) . href ;
} ;
Drupal . url . isLocal = function ( url ) {
var absoluteUrl = Drupal . url . toAbsolute ( url ) ;
2018-11-23 12:29:20 +00:00
var protocol = window . location . protocol ;
2015-09-04 13:20:09 -07:00
if ( protocol === 'http:' && absoluteUrl . indexOf ( 'https:' ) === 0 ) {
protocol = 'https:' ;
}
2018-11-23 12:29:20 +00:00
var baseUrl = protocol + '//' + window . location . host + drupalSettings . path . baseUrl . slice ( 0 , - 1 ) ;
2015-09-04 13:20:09 -07:00
try {
absoluteUrl = decodeURIComponent ( absoluteUrl ) ;
2018-11-23 12:29:20 +00:00
} catch ( e ) { }
2015-09-04 13:20:09 -07:00
try {
baseUrl = decodeURIComponent ( baseUrl ) ;
2018-11-23 12:29:20 +00:00
} catch ( e ) { }
2015-09-04 13:20:09 -07:00
return absoluteUrl === baseUrl || absoluteUrl . indexOf ( baseUrl + '/' ) === 0 ;
} ;
2015-08-17 17:00:26 -07:00
Drupal . formatPlural = function ( count , singular , plural , args , options ) {
args = args || { } ;
args [ '@count' ] = count ;
var pluralDelimiter = drupalSettings . pluralDelimiter ;
var translations = Drupal . t ( singular + pluralDelimiter + plural , args , options ) . split ( pluralDelimiter ) ;
var index = 0 ;
if ( typeof drupalTranslations !== 'undefined' && drupalTranslations . pluralFormula ) {
2018-11-23 12:29:20 +00:00
index = count in drupalTranslations . pluralFormula ? drupalTranslations . pluralFormula [ count ] : drupalTranslations . pluralFormula . default ;
} else if ( args [ '@count' ] !== 1 ) {
2015-08-17 17:00:26 -07:00
index = 1 ;
}
return translations [ index ] ;
} ;
Drupal . encodePath = function ( item ) {
return window . encodeURIComponent ( item ) . replace ( /%2F/g , '/' ) ;
} ;
Drupal . theme = function ( func ) {
if ( func in Drupal . theme ) {
2018-11-23 12:29:20 +00:00
var _Drupal$theme ;
for ( var _len = arguments . length , args = Array ( _len > 1 ? _len - 1 : 0 ) , _key = 1 ; _key < _len ; _key ++ ) {
args [ _key - 1 ] = arguments [ _key ] ;
}
return ( _Drupal$theme = Drupal . theme ) [ func ] . apply ( _Drupal$theme , args ) ;
2015-08-17 17:00:26 -07:00
}
} ;
Drupal . theme . placeholder = function ( str ) {
return '<em class="placeholder">' + Drupal . checkPlain ( str ) + '</em>' ;
} ;
2018-11-23 12:29:20 +00:00
} ) ( Drupal , window . drupalSettings , window . drupalTranslations ) ;