2019-01-14 12:56:14 -05:00
/ * * !
2015-11-26 19:58:46 -05:00
2019-01-14 12:56:14 -05:00
@ license
2020-04-07 11:01:02 -04:00
handlebars v4 . 7.6
2015-11-26 19:58:46 -05:00
2020-04-07 11:01:02 -04:00
Copyright ( C ) 2011 - 2019 by Yehuda Katz
2015-11-26 19:58:46 -05:00
Permission is hereby granted , free of charge , to any person obtaining a copy
of this software and associated documentation files ( the "Software" ) , to deal
in the Software without restriction , including without limitation the rights
to use , copy , modify , merge , publish , distribute , sublicense , and / or sell
copies of the Software , and to permit persons to whom the Software is
furnished to do so , subject to the following conditions :
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software .
THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND , EXPRESS OR
IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY ,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT . IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM , DAMAGES OR OTHER
LIABILITY , WHETHER IN AN ACTION OF CONTRACT , TORT OR OTHERWISE , ARISING FROM ,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE .
* /
2016-01-15 11:40:30 -05:00
( function webpackUniversalModuleDefinition ( root , factory ) {
if ( typeof exports === 'object' && typeof module === 'object' )
module . exports = factory ( ) ;
else if ( typeof define === 'function' && define . amd )
define ( [ ] , factory ) ;
else if ( typeof exports === 'object' )
exports [ "Handlebars" ] = factory ( ) ;
else
root [ "Handlebars" ] = factory ( ) ;
} ) ( this , function ( ) {
return /******/ ( function ( modules ) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = { } ;
/******/ // The require function
/******/ function _ _webpack _require _ _ ( moduleId ) {
/******/ // Check if module is in cache
/******/ if ( installedModules [ moduleId ] )
/******/ return installedModules [ moduleId ] . exports ;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules [ moduleId ] = {
/******/ exports : { } ,
/******/ id : moduleId ,
/******/ loaded : false
/******/ } ;
/******/ // Execute the module function
/******/ modules [ moduleId ] . call ( module . exports , module , module . exports , _ _webpack _require _ _ ) ;
/******/ // Flag the module as loaded
/******/ module . loaded = true ;
/******/ // Return the exports of the module
/******/ return module . exports ;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ _ _webpack _require _ _ . m = modules ;
/******/ // expose the module cache
/******/ _ _webpack _require _ _ . c = installedModules ;
/******/ // __webpack_public_path__
/******/ _ _webpack _require _ _ . p = "" ;
/******/ // Load entry module and return exports
/******/ return _ _webpack _require _ _ ( 0 ) ;
/******/ } )
/************************************************************************/
/******/ ( [
/* 0 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
var _interopRequireWildcard = _ _webpack _require _ _ ( 1 ) [ 'default' ] ;
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
var _handlebarsBase = _ _webpack _require _ _ ( 3 ) ;
var base = _interopRequireWildcard ( _handlebarsBase ) ;
// Each of these augment the Handlebars object. No need to setup here.
// (This is done to easily share code between commonjs and browse envs)
2020-04-07 11:01:02 -04:00
var _handlebarsSafeString = _ _webpack _require _ _ ( 36 ) ;
2016-01-15 11:40:30 -05:00
var _handlebarsSafeString2 = _interopRequireDefault ( _handlebarsSafeString ) ;
var _handlebarsException = _ _webpack _require _ _ ( 5 ) ;
var _handlebarsException2 = _interopRequireDefault ( _handlebarsException ) ;
var _handlebarsUtils = _ _webpack _require _ _ ( 4 ) ;
var Utils = _interopRequireWildcard ( _handlebarsUtils ) ;
2020-04-07 11:01:02 -04:00
var _handlebarsRuntime = _ _webpack _require _ _ ( 37 ) ;
2016-01-15 11:40:30 -05:00
var runtime = _interopRequireWildcard ( _handlebarsRuntime ) ;
2020-04-07 11:01:02 -04:00
var _handlebarsNoConflict = _ _webpack _require _ _ ( 43 ) ;
2016-01-15 11:40:30 -05:00
var _handlebarsNoConflict2 = _interopRequireDefault ( _handlebarsNoConflict ) ;
// For compatibility and usage outside of module systems, make the Handlebars object a namespace
function create ( ) {
var hb = new base . HandlebarsEnvironment ( ) ;
Utils . extend ( hb , base ) ;
hb . SafeString = _handlebarsSafeString2 [ 'default' ] ;
hb . Exception = _handlebarsException2 [ 'default' ] ;
hb . Utils = Utils ;
hb . escapeExpression = Utils . escapeExpression ;
hb . VM = runtime ;
hb . template = function ( spec ) {
return runtime . template ( spec , hb ) ;
} ;
return hb ;
}
var inst = create ( ) ;
inst . create = create ;
_handlebarsNoConflict2 [ 'default' ] ( inst ) ;
inst [ 'default' ] = inst ;
exports [ 'default' ] = inst ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2016-01-15 11:40:30 -05:00
/* 1 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
"use strict" ;
exports [ "default" ] = function ( obj ) {
if ( obj && obj . _ _esModule ) {
return obj ;
} else {
var newObj = { } ;
if ( obj != null ) {
for ( var key in obj ) {
if ( Object . prototype . hasOwnProperty . call ( obj , key ) ) newObj [ key ] = obj [ key ] ;
}
}
newObj [ "default" ] = obj ;
return newObj ;
}
} ;
exports . _ _esModule = true ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2016-01-15 11:40:30 -05:00
/* 2 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
"use strict" ;
exports [ "default" ] = function ( obj ) {
return obj && obj . _ _esModule ? obj : {
"default" : obj
} ;
} ;
exports . _ _esModule = true ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2016-01-15 11:40:30 -05:00
/* 3 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
exports . HandlebarsEnvironment = HandlebarsEnvironment ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
var _exception = _ _webpack _require _ _ ( 5 ) ;
var _exception2 = _interopRequireDefault ( _exception ) ;
2019-01-14 12:56:14 -05:00
var _helpers = _ _webpack _require _ _ ( 9 ) ;
2016-01-15 11:40:30 -05:00
2020-01-07 15:37:37 -05:00
var _decorators = _ _webpack _require _ _ ( 29 ) ;
2016-01-15 11:40:30 -05:00
2020-01-07 15:37:37 -05:00
var _logger = _ _webpack _require _ _ ( 31 ) ;
2016-01-15 11:40:30 -05:00
var _logger2 = _interopRequireDefault ( _logger ) ;
2020-04-07 11:01:02 -04:00
var _internalProtoAccess = _ _webpack _require _ _ ( 32 ) ;
var VERSION = '4.7.6' ;
2016-01-15 11:40:30 -05:00
exports . VERSION = VERSION ;
2020-01-07 15:37:37 -05:00
var COMPILER _REVISION = 8 ;
2016-01-15 11:40:30 -05:00
exports . COMPILER _REVISION = COMPILER _REVISION ;
2020-01-07 15:37:37 -05:00
var LAST _COMPATIBLE _COMPILER _REVISION = 7 ;
exports . LAST _COMPATIBLE _COMPILER _REVISION = LAST _COMPATIBLE _COMPILER _REVISION ;
2016-01-15 11:40:30 -05:00
var REVISION _CHANGES = {
1 : '<= 1.0.rc.2' , // 1.0.rc.2 is actually rev2 but doesn't report it
2 : '== 1.0.0-rc.3' ,
3 : '== 1.0.0-rc.4' ,
4 : '== 1.x.x' ,
5 : '== 2.0.0-alpha.x' ,
6 : '>= 2.0.0-beta.1' ,
2020-01-07 15:37:37 -05:00
7 : '>= 4.0.0 <4.3.0' ,
8 : '>= 4.3.0'
2016-01-15 11:40:30 -05:00
} ;
exports . REVISION _CHANGES = REVISION _CHANGES ;
var objectType = '[object Object]' ;
function HandlebarsEnvironment ( helpers , partials , decorators ) {
this . helpers = helpers || { } ;
this . partials = partials || { } ;
this . decorators = decorators || { } ;
_helpers . registerDefaultHelpers ( this ) ;
_decorators . registerDefaultDecorators ( this ) ;
}
HandlebarsEnvironment . prototype = {
constructor : HandlebarsEnvironment ,
logger : _logger2 [ 'default' ] ,
log : _logger2 [ 'default' ] . log ,
registerHelper : function registerHelper ( name , fn ) {
if ( _utils . toString . call ( name ) === objectType ) {
if ( fn ) {
throw new _exception2 [ 'default' ] ( 'Arg not supported with multiple helpers' ) ;
}
_utils . extend ( this . helpers , name ) ;
} else {
this . helpers [ name ] = fn ;
}
} ,
unregisterHelper : function unregisterHelper ( name ) {
delete this . helpers [ name ] ;
} ,
registerPartial : function registerPartial ( name , partial ) {
if ( _utils . toString . call ( name ) === objectType ) {
_utils . extend ( this . partials , name ) ;
} else {
if ( typeof partial === 'undefined' ) {
throw new _exception2 [ 'default' ] ( 'Attempting to register a partial called "' + name + '" as undefined' ) ;
}
this . partials [ name ] = partial ;
}
} ,
unregisterPartial : function unregisterPartial ( name ) {
delete this . partials [ name ] ;
} ,
registerDecorator : function registerDecorator ( name , fn ) {
if ( _utils . toString . call ( name ) === objectType ) {
if ( fn ) {
throw new _exception2 [ 'default' ] ( 'Arg not supported with multiple decorators' ) ;
}
_utils . extend ( this . decorators , name ) ;
} else {
this . decorators [ name ] = fn ;
}
} ,
unregisterDecorator : function unregisterDecorator ( name ) {
delete this . decorators [ name ] ;
2020-04-07 11:01:02 -04:00
} ,
/ * *
* Reset the memory of illegal property accesses that have already been logged .
* @ deprecated should only be used in handlebars test - cases
* /
resetLoggedPropertyAccesses : function resetLoggedPropertyAccesses ( ) {
_internalProtoAccess . resetLoggedProperties ( ) ;
2016-01-15 11:40:30 -05:00
}
} ;
var log = _logger2 [ 'default' ] . log ;
exports . log = log ;
exports . createFrame = _utils . createFrame ;
exports . logger = _logger2 [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2016-01-15 11:40:30 -05:00
/* 4 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
exports . _ _esModule = true ;
exports . extend = extend ;
exports . indexOf = indexOf ;
exports . escapeExpression = escapeExpression ;
exports . isEmpty = isEmpty ;
exports . createFrame = createFrame ;
exports . blockParams = blockParams ;
exports . appendContextPath = appendContextPath ;
var escape = {
'&' : '&' ,
'<' : '<' ,
'>' : '>' ,
'"' : '"' ,
"'" : ''' ,
'`' : '`' ,
'=' : '='
} ;
var badChars = /[&<>"'`=]/g ,
possible = /[&<>"'`=]/ ;
function escapeChar ( chr ) {
return escape [ chr ] ;
}
function extend ( obj /* , ...source */ ) {
for ( var i = 1 ; i < arguments . length ; i ++ ) {
for ( var key in arguments [ i ] ) {
if ( Object . prototype . hasOwnProperty . call ( arguments [ i ] , key ) ) {
obj [ key ] = arguments [ i ] [ key ] ;
}
}
}
return obj ;
}
var toString = Object . prototype . toString ;
exports . toString = toString ;
// Sourced from lodash
// https://github.com/bestiejs/lodash/blob/master/LICENSE.txt
/* eslint-disable func-style */
var isFunction = function isFunction ( value ) {
return typeof value === 'function' ;
} ;
// fallback for older versions of Chrome and Safari
/* istanbul ignore next */
if ( isFunction ( /x/ ) ) {
exports . isFunction = isFunction = function ( value ) {
return typeof value === 'function' && toString . call ( value ) === '[object Function]' ;
} ;
}
exports . isFunction = isFunction ;
/* eslint-enable func-style */
/* istanbul ignore next */
var isArray = Array . isArray || function ( value ) {
return value && typeof value === 'object' ? toString . call ( value ) === '[object Array]' : false ;
} ;
exports . isArray = isArray ;
// Older IE versions do not directly support indexOf so we must implement our own, sadly.
function indexOf ( array , value ) {
for ( var i = 0 , len = array . length ; i < len ; i ++ ) {
if ( array [ i ] === value ) {
return i ;
}
}
return - 1 ;
}
function escapeExpression ( string ) {
if ( typeof string !== 'string' ) {
// don't escape SafeStrings, since they're already safe
if ( string && string . toHTML ) {
return string . toHTML ( ) ;
} else if ( string == null ) {
return '' ;
} else if ( ! string ) {
return string + '' ;
}
// Force a string conversion as this will be done by the append regardless and
// the regex test will do this transparently behind the scenes, causing issues if
// an object's to string has escaped characters in it.
string = '' + string ;
}
if ( ! possible . test ( string ) ) {
return string ;
}
return string . replace ( badChars , escapeChar ) ;
}
function isEmpty ( value ) {
if ( ! value && value !== 0 ) {
return true ;
} else if ( isArray ( value ) && value . length === 0 ) {
return true ;
} else {
return false ;
}
}
function createFrame ( object ) {
var frame = extend ( { } , object ) ;
frame . _parent = object ;
return frame ;
}
function blockParams ( params , ids ) {
params . path = ids ;
return params ;
}
function appendContextPath ( contextPath , id ) {
return ( contextPath ? contextPath + '.' : '' ) + id ;
}
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2016-01-15 11:40:30 -05:00
/* 5 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
2019-01-14 12:56:14 -05:00
var _Object$defineProperty = _ _webpack _require _ _ ( 6 ) [ 'default' ] ;
2016-01-15 11:40:30 -05:00
exports . _ _esModule = true ;
2020-01-07 15:37:37 -05:00
var errorProps = [ 'description' , 'fileName' , 'lineNumber' , 'endLineNumber' , 'message' , 'name' , 'number' , 'stack' ] ;
2016-01-15 11:40:30 -05:00
function Exception ( message , node ) {
var loc = node && node . loc ,
line = undefined ,
2020-01-07 15:37:37 -05:00
endLineNumber = undefined ,
column = undefined ,
endColumn = undefined ;
2016-01-15 11:40:30 -05:00
if ( loc ) {
line = loc . start . line ;
2020-01-07 15:37:37 -05:00
endLineNumber = loc . end . line ;
2016-01-15 11:40:30 -05:00
column = loc . start . column ;
2020-01-07 15:37:37 -05:00
endColumn = loc . end . column ;
2016-01-15 11:40:30 -05:00
message += ' - ' + line + ':' + column ;
}
var tmp = Error . prototype . constructor . call ( this , message ) ;
// Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.
for ( var idx = 0 ; idx < errorProps . length ; idx ++ ) {
this [ errorProps [ idx ] ] = tmp [ errorProps [ idx ] ] ;
}
/* istanbul ignore else */
if ( Error . captureStackTrace ) {
Error . captureStackTrace ( this , Exception ) ;
}
2019-01-14 12:56:14 -05:00
try {
if ( loc ) {
this . lineNumber = line ;
2020-01-07 15:37:37 -05:00
this . endLineNumber = endLineNumber ;
2019-01-14 12:56:14 -05:00
// Work around issue under safari where we can't directly set the column value
/* istanbul ignore next */
if ( _Object$defineProperty ) {
Object . defineProperty ( this , 'column' , {
value : column ,
enumerable : true
} ) ;
2020-01-07 15:37:37 -05:00
Object . defineProperty ( this , 'endColumn' , {
value : endColumn ,
enumerable : true
} ) ;
2019-01-14 12:56:14 -05:00
} else {
this . column = column ;
2020-01-07 15:37:37 -05:00
this . endColumn = endColumn ;
2019-01-14 12:56:14 -05:00
}
}
} catch ( nop ) {
/* Ignore if the browser is very particular */
2016-01-15 11:40:30 -05:00
}
}
Exception . prototype = new Error ( ) ;
exports [ 'default' ] = Exception ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2016-01-15 11:40:30 -05:00
/* 6 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
module . exports = { "default" : _ _webpack _require _ _ ( 7 ) , _ _esModule : true } ;
/***/ } ) ,
/* 7 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
var $ = _ _webpack _require _ _ ( 8 ) ;
module . exports = function defineProperty ( it , key , desc ) {
return $ . setDesc ( it , key , desc ) ;
} ;
/***/ } ) ,
/* 8 */
/***/ ( function ( module , exports ) {
var $Object = Object ;
module . exports = {
create : $Object . create ,
getProto : $Object . getPrototypeOf ,
isEnum : { } . propertyIsEnumerable ,
getDesc : $Object . getOwnPropertyDescriptor ,
setDesc : $Object . defineProperty ,
setDescs : $Object . defineProperties ,
getKeys : $Object . keys ,
getNames : $Object . getOwnPropertyNames ,
getSymbols : $Object . getOwnPropertySymbols ,
each : [ ] . forEach
} ;
/***/ } ) ,
/* 9 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
exports . registerDefaultHelpers = registerDefaultHelpers ;
2020-01-07 15:37:37 -05:00
exports . moveHelperToHooks = moveHelperToHooks ;
2016-01-15 11:40:30 -05:00
2019-01-14 12:56:14 -05:00
var _helpersBlockHelperMissing = _ _webpack _require _ _ ( 10 ) ;
2016-01-15 11:40:30 -05:00
var _helpersBlockHelperMissing2 = _interopRequireDefault ( _helpersBlockHelperMissing ) ;
2019-01-14 12:56:14 -05:00
var _helpersEach = _ _webpack _require _ _ ( 11 ) ;
2016-01-15 11:40:30 -05:00
var _helpersEach2 = _interopRequireDefault ( _helpersEach ) ;
2020-01-07 15:37:37 -05:00
var _helpersHelperMissing = _ _webpack _require _ _ ( 24 ) ;
2016-01-15 11:40:30 -05:00
var _helpersHelperMissing2 = _interopRequireDefault ( _helpersHelperMissing ) ;
2020-01-07 15:37:37 -05:00
var _helpersIf = _ _webpack _require _ _ ( 25 ) ;
2016-01-15 11:40:30 -05:00
var _helpersIf2 = _interopRequireDefault ( _helpersIf ) ;
2020-01-07 15:37:37 -05:00
var _helpersLog = _ _webpack _require _ _ ( 26 ) ;
2016-01-15 11:40:30 -05:00
var _helpersLog2 = _interopRequireDefault ( _helpersLog ) ;
2020-01-07 15:37:37 -05:00
var _helpersLookup = _ _webpack _require _ _ ( 27 ) ;
2016-01-15 11:40:30 -05:00
var _helpersLookup2 = _interopRequireDefault ( _helpersLookup ) ;
2020-01-07 15:37:37 -05:00
var _helpersWith = _ _webpack _require _ _ ( 28 ) ;
2016-01-15 11:40:30 -05:00
var _helpersWith2 = _interopRequireDefault ( _helpersWith ) ;
function registerDefaultHelpers ( instance ) {
_helpersBlockHelperMissing2 [ 'default' ] ( instance ) ;
_helpersEach2 [ 'default' ] ( instance ) ;
_helpersHelperMissing2 [ 'default' ] ( instance ) ;
_helpersIf2 [ 'default' ] ( instance ) ;
_helpersLog2 [ 'default' ] ( instance ) ;
_helpersLookup2 [ 'default' ] ( instance ) ;
_helpersWith2 [ 'default' ] ( instance ) ;
}
2020-01-07 15:37:37 -05:00
function moveHelperToHooks ( instance , helperName , keepHelper ) {
if ( instance . helpers [ helperName ] ) {
instance . hooks [ helperName ] = instance . helpers [ helperName ] ;
if ( ! keepHelper ) {
delete instance . helpers [ helperName ] ;
}
}
}
2019-01-14 12:56:14 -05:00
/***/ } ) ,
/* 10 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
exports . _ _esModule = true ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
exports [ 'default' ] = function ( instance ) {
instance . registerHelper ( 'blockHelperMissing' , function ( context , options ) {
var inverse = options . inverse ,
fn = options . fn ;
if ( context === true ) {
return fn ( this ) ;
} else if ( context === false || context == null ) {
return inverse ( this ) ;
} else if ( _utils . isArray ( context ) ) {
if ( context . length > 0 ) {
if ( options . ids ) {
options . ids = [ options . name ] ;
}
return instance . helpers . each ( context , options ) ;
} else {
return inverse ( this ) ;
}
} else {
if ( options . data && options . ids ) {
var data = _utils . createFrame ( options . data ) ;
data . contextPath = _utils . appendContextPath ( options . data . contextPath , options . name ) ;
options = { data : data } ;
}
return fn ( context , options ) ;
}
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
/* 11 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
2020-01-07 15:37:37 -05:00
/* WEBPACK VAR INJECTION */ ( function ( global ) { 'use strict' ;
var _Object$keys = _ _webpack _require _ _ ( 12 ) [ 'default' ] ;
2016-01-15 11:40:30 -05:00
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
var _exception = _ _webpack _require _ _ ( 5 ) ;
var _exception2 = _interopRequireDefault ( _exception ) ;
exports [ 'default' ] = function ( instance ) {
instance . registerHelper ( 'each' , function ( context , options ) {
if ( ! options ) {
throw new _exception2 [ 'default' ] ( 'Must pass iterator to #each' ) ;
}
var fn = options . fn ,
inverse = options . inverse ,
i = 0 ,
ret = '' ,
data = undefined ,
contextPath = undefined ;
if ( options . data && options . ids ) {
contextPath = _utils . appendContextPath ( options . data . contextPath , options . ids [ 0 ] ) + '.' ;
}
if ( _utils . isFunction ( context ) ) {
context = context . call ( this ) ;
}
if ( options . data ) {
data = _utils . createFrame ( options . data ) ;
}
function execIteration ( field , index , last ) {
if ( data ) {
data . key = field ;
data . index = index ;
data . first = index === 0 ;
data . last = ! ! last ;
if ( contextPath ) {
data . contextPath = contextPath + field ;
}
}
ret = ret + fn ( context [ field ] , {
data : data ,
blockParams : _utils . blockParams ( [ context [ field ] , field ] , [ contextPath + field , null ] )
} ) ;
}
if ( context && typeof context === 'object' ) {
if ( _utils . isArray ( context ) ) {
for ( var j = context . length ; i < j ; i ++ ) {
if ( i in context ) {
execIteration ( i , i , i === context . length - 1 ) ;
}
}
2020-01-07 15:37:37 -05:00
} else if ( global . Symbol && context [ global . Symbol . iterator ] ) {
var newContext = [ ] ;
var iterator = context [ global . Symbol . iterator ] ( ) ;
for ( var it = iterator . next ( ) ; ! it . done ; it = iterator . next ( ) ) {
newContext . push ( it . value ) ;
}
context = newContext ;
for ( var j = context . length ; i < j ; i ++ ) {
execIteration ( i , i , i === context . length - 1 ) ;
}
2016-01-15 11:40:30 -05:00
} else {
2020-01-07 15:37:37 -05:00
( function ( ) {
var priorKey = undefined ;
2016-01-15 11:40:30 -05:00
2020-01-07 15:37:37 -05:00
_Object$keys ( context ) . forEach ( function ( key ) {
2016-01-15 11:40:30 -05:00
// We're running the iterations one step out of sync so we can detect
// the last iteration without have to scan the object twice and create
// an itermediate keys array.
if ( priorKey !== undefined ) {
execIteration ( priorKey , i - 1 ) ;
}
priorKey = key ;
i ++ ;
2020-01-07 15:37:37 -05:00
} ) ;
if ( priorKey !== undefined ) {
execIteration ( priorKey , i - 1 , true ) ;
2016-01-15 11:40:30 -05:00
}
2020-01-07 15:37:37 -05:00
} ) ( ) ;
2016-01-15 11:40:30 -05:00
}
}
if ( i === 0 ) {
ret = inverse ( this ) ;
}
return ret ;
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2020-01-07 15:37:37 -05:00
/* WEBPACK VAR INJECTION */ } . call ( exports , ( function ( ) { return this ; } ( ) ) ) )
2016-01-15 11:40:30 -05:00
2019-01-14 12:56:14 -05:00
/***/ } ) ,
/* 12 */
2020-01-07 15:37:37 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
module . exports = { "default" : _ _webpack _require _ _ ( 13 ) , _ _esModule : true } ;
/***/ } ) ,
/* 13 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
_ _webpack _require _ _ ( 14 ) ;
module . exports = _ _webpack _require _ _ ( 20 ) . Object . keys ;
/***/ } ) ,
/* 14 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
// 19.1.2.14 Object.keys(O)
var toObject = _ _webpack _require _ _ ( 15 ) ;
_ _webpack _require _ _ ( 17 ) ( 'keys' , function ( $keys ) {
return function keys ( it ) {
return $keys ( toObject ( it ) ) ;
} ;
} ) ;
/***/ } ) ,
/* 15 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
// 7.1.13 ToObject(argument)
var defined = _ _webpack _require _ _ ( 16 ) ;
module . exports = function ( it ) {
return Object ( defined ( it ) ) ;
} ;
/***/ } ) ,
/* 16 */
/***/ ( function ( module , exports ) {
// 7.2.1 RequireObjectCoercible(argument)
module . exports = function ( it ) {
if ( it == undefined ) throw TypeError ( "Can't call method on " + it ) ;
return it ;
} ;
/***/ } ) ,
/* 17 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
// most Object methods by ES6 should accept primitives
var $export = _ _webpack _require _ _ ( 18 )
, core = _ _webpack _require _ _ ( 20 )
, fails = _ _webpack _require _ _ ( 23 ) ;
module . exports = function ( KEY , exec ) {
var fn = ( core . Object || { } ) [ KEY ] || Object [ KEY ]
, exp = { } ;
exp [ KEY ] = exec ( fn ) ;
$export ( $export . S + $export . F * fails ( function ( ) { fn ( 1 ) ; } ) , 'Object' , exp ) ;
} ;
/***/ } ) ,
/* 18 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
var global = _ _webpack _require _ _ ( 19 )
, core = _ _webpack _require _ _ ( 20 )
, ctx = _ _webpack _require _ _ ( 21 )
, PROTOTYPE = 'prototype' ;
var $export = function ( type , name , source ) {
var IS _FORCED = type & $export . F
, IS _GLOBAL = type & $export . G
, IS _STATIC = type & $export . S
, IS _PROTO = type & $export . P
, IS _BIND = type & $export . B
, IS _WRAP = type & $export . W
, exports = IS _GLOBAL ? core : core [ name ] || ( core [ name ] = { } )
, target = IS _GLOBAL ? global : IS _STATIC ? global [ name ] : ( global [ name ] || { } ) [ PROTOTYPE ]
, key , own , out ;
if ( IS _GLOBAL ) source = name ;
for ( key in source ) {
// contains in native
own = ! IS _FORCED && target && key in target ;
if ( own && key in exports ) continue ;
// export native or passed
out = own ? target [ key ] : source [ key ] ;
// prevent global pollution for namespaces
exports [ key ] = IS _GLOBAL && typeof target [ key ] != 'function' ? source [ key ]
// bind timers to global for call from export context
: IS _BIND && own ? ctx ( out , global )
// wrap global constructors for prevent change them in library
: IS _WRAP && target [ key ] == out ? ( function ( C ) {
var F = function ( param ) {
return this instanceof C ? new C ( param ) : C ( param ) ;
} ;
F [ PROTOTYPE ] = C [ PROTOTYPE ] ;
return F ;
// make static versions for prototype methods
} ) ( out ) : IS _PROTO && typeof out == 'function' ? ctx ( Function . call , out ) : out ;
if ( IS _PROTO ) ( exports [ PROTOTYPE ] || ( exports [ PROTOTYPE ] = { } ) ) [ key ] = out ;
}
} ;
// type bitmap
$export . F = 1 ; // forced
$export . G = 2 ; // global
$export . S = 4 ; // static
$export . P = 8 ; // proto
$export . B = 16 ; // bind
$export . W = 32 ; // wrap
module . exports = $export ;
/***/ } ) ,
/* 19 */
/***/ ( function ( module , exports ) {
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module . exports = typeof window != 'undefined' && window . Math == Math
? window : typeof self != 'undefined' && self . Math == Math ? self : Function ( 'return this' ) ( ) ;
if ( typeof _ _g == 'number' ) _ _g = global ; // eslint-disable-line no-undef
/***/ } ) ,
/* 20 */
/***/ ( function ( module , exports ) {
var core = module . exports = { version : '1.2.6' } ;
if ( typeof _ _e == 'number' ) _ _e = core ; // eslint-disable-line no-undef
/***/ } ) ,
/* 21 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
// optional / simple context binding
var aFunction = _ _webpack _require _ _ ( 22 ) ;
module . exports = function ( fn , that , length ) {
aFunction ( fn ) ;
if ( that === undefined ) return fn ;
switch ( length ) {
case 1 : return function ( a ) {
return fn . call ( that , a ) ;
} ;
case 2 : return function ( a , b ) {
return fn . call ( that , a , b ) ;
} ;
case 3 : return function ( a , b , c ) {
return fn . call ( that , a , b , c ) ;
} ;
}
return function ( /* ...args */ ) {
return fn . apply ( that , arguments ) ;
} ;
} ;
/***/ } ) ,
/* 22 */
/***/ ( function ( module , exports ) {
module . exports = function ( it ) {
if ( typeof it != 'function' ) throw TypeError ( it + ' is not a function!' ) ;
return it ;
} ;
/***/ } ) ,
/* 23 */
/***/ ( function ( module , exports ) {
module . exports = function ( exec ) {
try {
return ! ! exec ( ) ;
} catch ( e ) {
return true ;
}
} ;
/***/ } ) ,
/* 24 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
var _exception = _ _webpack _require _ _ ( 5 ) ;
var _exception2 = _interopRequireDefault ( _exception ) ;
exports [ 'default' ] = function ( instance ) {
instance . registerHelper ( 'helperMissing' , function ( ) /* [args, ]options */ {
if ( arguments . length === 1 ) {
// A missing field in a {{foo}} construct.
return undefined ;
} else {
// Someone is actually trying to call something, blow up.
throw new _exception2 [ 'default' ] ( 'Missing helper: "' + arguments [ arguments . length - 1 ] . name + '"' ) ;
}
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 25 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
2020-01-07 15:37:37 -05:00
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
2016-01-15 11:40:30 -05:00
exports . _ _esModule = true ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
2020-01-07 15:37:37 -05:00
var _exception = _ _webpack _require _ _ ( 5 ) ;
var _exception2 = _interopRequireDefault ( _exception ) ;
2016-01-15 11:40:30 -05:00
exports [ 'default' ] = function ( instance ) {
instance . registerHelper ( 'if' , function ( conditional , options ) {
2020-01-07 15:37:37 -05:00
if ( arguments . length != 2 ) {
throw new _exception2 [ 'default' ] ( '#if requires exactly one argument' ) ;
}
2016-01-15 11:40:30 -05:00
if ( _utils . isFunction ( conditional ) ) {
conditional = conditional . call ( this ) ;
}
// Default behavior is to render the positive path if the value is truthy and not empty.
// The `includeZero` option may be set to treat the condtional as purely not empty based on the
// behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.
if ( ! options . hash . includeZero && ! conditional || _utils . isEmpty ( conditional ) ) {
return options . inverse ( this ) ;
} else {
return options . fn ( this ) ;
}
} ) ;
instance . registerHelper ( 'unless' , function ( conditional , options ) {
2020-01-07 15:37:37 -05:00
if ( arguments . length != 2 ) {
throw new _exception2 [ 'default' ] ( '#unless requires exactly one argument' ) ;
}
2020-04-07 11:01:02 -04:00
return instance . helpers [ 'if' ] . call ( this , conditional , {
fn : options . inverse ,
inverse : options . fn ,
hash : options . hash
} ) ;
2016-01-15 11:40:30 -05:00
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 26 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
exports . _ _esModule = true ;
exports [ 'default' ] = function ( instance ) {
instance . registerHelper ( 'log' , function ( ) /* message, options */ {
var args = [ undefined ] ,
options = arguments [ arguments . length - 1 ] ;
for ( var i = 0 ; i < arguments . length - 1 ; i ++ ) {
args . push ( arguments [ i ] ) ;
}
var level = 1 ;
if ( options . hash . level != null ) {
level = options . hash . level ;
} else if ( options . data && options . data . level != null ) {
level = options . data . level ;
}
args [ 0 ] = level ;
instance . log . apply ( instance , args ) ;
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 27 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
exports . _ _esModule = true ;
exports [ 'default' ] = function ( instance ) {
2020-04-07 11:01:02 -04:00
instance . registerHelper ( 'lookup' , function ( obj , field , options ) {
2019-06-05 13:54:52 -04:00
if ( ! obj ) {
2020-04-07 11:01:02 -04:00
// Note for 5.0: Change to "obj == null" in 5.0
2019-06-05 13:54:52 -04:00
return obj ;
}
2020-04-07 11:01:02 -04:00
return options . lookupProperty ( obj , field ) ;
2016-01-15 11:40:30 -05:00
} ) ;
} ;
2020-04-07 11:01:02 -04:00
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 28 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
2020-01-07 15:37:37 -05:00
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
2016-01-15 11:40:30 -05:00
exports . _ _esModule = true ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
2020-01-07 15:37:37 -05:00
var _exception = _ _webpack _require _ _ ( 5 ) ;
var _exception2 = _interopRequireDefault ( _exception ) ;
2016-01-15 11:40:30 -05:00
exports [ 'default' ] = function ( instance ) {
instance . registerHelper ( 'with' , function ( context , options ) {
2020-01-07 15:37:37 -05:00
if ( arguments . length != 2 ) {
throw new _exception2 [ 'default' ] ( '#with requires exactly one argument' ) ;
}
2016-01-15 11:40:30 -05:00
if ( _utils . isFunction ( context ) ) {
context = context . call ( this ) ;
}
var fn = options . fn ;
if ( ! _utils . isEmpty ( context ) ) {
var data = options . data ;
if ( options . data && options . ids ) {
data = _utils . createFrame ( options . data ) ;
data . contextPath = _utils . appendContextPath ( options . data . contextPath , options . ids [ 0 ] ) ;
}
return fn ( context , {
data : data ,
blockParams : _utils . blockParams ( [ context ] , [ data && data . contextPath ] )
} ) ;
} else {
return options . inverse ( this ) ;
}
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 29 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
exports . registerDefaultDecorators = registerDefaultDecorators ;
2020-01-07 15:37:37 -05:00
var _decoratorsInline = _ _webpack _require _ _ ( 30 ) ;
2016-01-15 11:40:30 -05:00
var _decoratorsInline2 = _interopRequireDefault ( _decoratorsInline ) ;
function registerDefaultDecorators ( instance ) {
_decoratorsInline2 [ 'default' ] ( instance ) ;
}
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 30 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
exports . _ _esModule = true ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
exports [ 'default' ] = function ( instance ) {
instance . registerDecorator ( 'inline' , function ( fn , props , container , options ) {
var ret = fn ;
if ( ! props . partials ) {
props . partials = { } ;
ret = function ( context , options ) {
// Create a new partials stack frame prior to exec.
var original = container . partials ;
container . partials = _utils . extend ( { } , original , props . partials ) ;
var ret = fn ( context , options ) ;
container . partials = original ;
return ret ;
} ;
}
props . partials [ options . args [ 0 ] ] = options . fn ;
return ret ;
} ) ;
} ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 31 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
exports . _ _esModule = true ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
var logger = {
methodMap : [ 'debug' , 'info' , 'warn' , 'error' ] ,
level : 'info' ,
// Maps a given level value to the `methodMap` indexes above.
lookupLevel : function lookupLevel ( level ) {
if ( typeof level === 'string' ) {
var levelMap = _utils . indexOf ( logger . methodMap , level . toLowerCase ( ) ) ;
if ( levelMap >= 0 ) {
level = levelMap ;
} else {
level = parseInt ( level , 10 ) ;
}
}
return level ;
} ,
// Can be overridden in the host environment
log : function log ( level ) {
level = logger . lookupLevel ( level ) ;
if ( typeof console !== 'undefined' && logger . lookupLevel ( logger . level ) <= level ) {
var method = logger . methodMap [ level ] ;
2020-04-07 11:01:02 -04:00
// eslint-disable-next-line no-console
2016-01-15 11:40:30 -05:00
if ( ! console [ method ] ) {
method = 'log' ;
}
for ( var _len = arguments . length , message = Array ( _len > 1 ? _len - 1 : 0 ) , _key = 1 ; _key < _len ; _key ++ ) {
message [ _key - 1 ] = arguments [ _key ] ;
}
console [ method ] . apply ( console , message ) ; // eslint-disable-line no-console
}
}
} ;
exports [ 'default' ] = logger ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-01-07 15:37:37 -05:00
/* 32 */
2020-04-07 11:01:02 -04:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
'use strict' ;
var _Object$create = _ _webpack _require _ _ ( 33 ) [ 'default' ] ;
var _Object$keys = _ _webpack _require _ _ ( 12 ) [ 'default' ] ;
var _interopRequireWildcard = _ _webpack _require _ _ ( 1 ) [ 'default' ] ;
exports . _ _esModule = true ;
exports . createProtoAccessControl = createProtoAccessControl ;
exports . resultIsAllowed = resultIsAllowed ;
exports . resetLoggedProperties = resetLoggedProperties ;
var _createNewLookupObject = _ _webpack _require _ _ ( 35 ) ;
var _logger = _ _webpack _require _ _ ( 31 ) ;
var logger = _interopRequireWildcard ( _logger ) ;
var loggedProperties = _Object$create ( null ) ;
function createProtoAccessControl ( runtimeOptions ) {
var defaultMethodWhiteList = _Object$create ( null ) ;
defaultMethodWhiteList [ 'constructor' ] = false ;
defaultMethodWhiteList [ '__defineGetter__' ] = false ;
defaultMethodWhiteList [ '__defineSetter__' ] = false ;
defaultMethodWhiteList [ '__lookupGetter__' ] = false ;
var defaultPropertyWhiteList = _Object$create ( null ) ;
// eslint-disable-next-line no-proto
defaultPropertyWhiteList [ '__proto__' ] = false ;
return {
properties : {
whitelist : _createNewLookupObject . createNewLookupObject ( defaultPropertyWhiteList , runtimeOptions . allowedProtoProperties ) ,
defaultValue : runtimeOptions . allowProtoPropertiesByDefault
} ,
methods : {
whitelist : _createNewLookupObject . createNewLookupObject ( defaultMethodWhiteList , runtimeOptions . allowedProtoMethods ) ,
defaultValue : runtimeOptions . allowProtoMethodsByDefault
}
} ;
}
function resultIsAllowed ( result , protoAccessControl , propertyName ) {
if ( typeof result === 'function' ) {
return checkWhiteList ( protoAccessControl . methods , propertyName ) ;
} else {
return checkWhiteList ( protoAccessControl . properties , propertyName ) ;
}
}
function checkWhiteList ( protoAccessControlForType , propertyName ) {
if ( protoAccessControlForType . whitelist [ propertyName ] !== undefined ) {
return protoAccessControlForType . whitelist [ propertyName ] === true ;
}
if ( protoAccessControlForType . defaultValue !== undefined ) {
return protoAccessControlForType . defaultValue ;
}
logUnexpecedPropertyAccessOnce ( propertyName ) ;
return false ;
}
function logUnexpecedPropertyAccessOnce ( propertyName ) {
if ( loggedProperties [ propertyName ] !== true ) {
loggedProperties [ propertyName ] = true ;
logger . log ( 'error' , 'Handlebars: Access has been denied to resolve the property "' + propertyName + '" because it is not an "own property" of its parent.\n' + 'You can add a runtime option to disable the check or this warning:\n' + 'See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details' ) ;
}
}
function resetLoggedProperties ( ) {
_Object$keys ( loggedProperties ) . forEach ( function ( propertyName ) {
delete loggedProperties [ propertyName ] ;
} ) ;
}
/***/ } ) ,
/* 33 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
module . exports = { "default" : _ _webpack _require _ _ ( 34 ) , _ _esModule : true } ;
/***/ } ) ,
/* 34 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
var $ = _ _webpack _require _ _ ( 8 ) ;
module . exports = function create ( P , D ) {
return $ . create ( P , D ) ;
} ;
/***/ } ) ,
/* 35 */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
'use strict' ;
var _Object$create = _ _webpack _require _ _ ( 33 ) [ 'default' ] ;
exports . _ _esModule = true ;
exports . createNewLookupObject = createNewLookupObject ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
/ * *
* Create a new object with "null" - prototype to avoid truthy results on prototype properties .
* The resulting object can be used with "object[property]" to check if a property exists
* @ param { ... object } sources a varargs parameter of source objects that will be merged
* @ returns { object }
* /
function createNewLookupObject ( ) {
for ( var _len = arguments . length , sources = Array ( _len ) , _key = 0 ; _key < _len ; _key ++ ) {
sources [ _key ] = arguments [ _key ] ;
}
return _utils . extend . apply ( undefined , [ _Object$create ( null ) ] . concat ( sources ) ) ;
}
/***/ } ) ,
/* 36 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
// Build out our basic SafeString type
'use strict' ;
exports . _ _esModule = true ;
function SafeString ( string ) {
this . string = string ;
}
SafeString . prototype . toString = SafeString . prototype . toHTML = function ( ) {
return '' + this . string ;
} ;
exports [ 'default' ] = SafeString ;
module . exports = exports [ 'default' ] ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-04-07 11:01:02 -04:00
/* 37 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
2020-04-07 11:01:02 -04:00
var _Object$seal = _ _webpack _require _ _ ( 38 ) [ 'default' ] ;
var _Object$keys = _ _webpack _require _ _ ( 12 ) [ 'default' ] ;
2019-01-14 12:56:14 -05:00
2016-01-15 11:40:30 -05:00
var _interopRequireWildcard = _ _webpack _require _ _ ( 1 ) [ 'default' ] ;
var _interopRequireDefault = _ _webpack _require _ _ ( 2 ) [ 'default' ] ;
exports . _ _esModule = true ;
exports . checkRevision = checkRevision ;
exports . template = template ;
exports . wrapProgram = wrapProgram ;
exports . resolvePartial = resolvePartial ;
exports . invokePartial = invokePartial ;
exports . noop = noop ;
var _utils = _ _webpack _require _ _ ( 4 ) ;
var Utils = _interopRequireWildcard ( _utils ) ;
var _exception = _ _webpack _require _ _ ( 5 ) ;
var _exception2 = _interopRequireDefault ( _exception ) ;
var _base = _ _webpack _require _ _ ( 3 ) ;
2020-01-07 15:37:37 -05:00
var _helpers = _ _webpack _require _ _ ( 9 ) ;
2020-04-07 11:01:02 -04:00
var _internalWrapHelper = _ _webpack _require _ _ ( 42 ) ;
var _internalProtoAccess = _ _webpack _require _ _ ( 32 ) ;
2016-01-15 11:40:30 -05:00
function checkRevision ( compilerInfo ) {
var compilerRevision = compilerInfo && compilerInfo [ 0 ] || 1 ,
currentRevision = _base . COMPILER _REVISION ;
2020-01-07 15:37:37 -05:00
if ( compilerRevision >= _base . LAST _COMPATIBLE _COMPILER _REVISION && compilerRevision <= _base . COMPILER _REVISION ) {
return ;
}
if ( compilerRevision < _base . LAST _COMPATIBLE _COMPILER _REVISION ) {
var runtimeVersions = _base . REVISION _CHANGES [ currentRevision ] ,
compilerVersions = _base . REVISION _CHANGES [ compilerRevision ] ;
throw new _exception2 [ 'default' ] ( 'Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').' ) ;
} else {
// Use the embedded version info since the runtime doesn't know about this revision yet
throw new _exception2 [ 'default' ] ( 'Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo [ 1 ] + ').' ) ;
2016-01-15 11:40:30 -05:00
}
}
function template ( templateSpec , env ) {
/* istanbul ignore next */
if ( ! env ) {
throw new _exception2 [ 'default' ] ( 'No environment passed to template' ) ;
}
if ( ! templateSpec || ! templateSpec . main ) {
throw new _exception2 [ 'default' ] ( 'Unknown template object: ' + typeof templateSpec ) ;
}
templateSpec . main . decorator = templateSpec . main _d ;
// Note: Using env.VM references rather than local var references throughout this section to allow
2020-01-07 15:37:37 -05:00
// for external users to override these as pseudo-supported APIs.
2016-01-15 11:40:30 -05:00
env . VM . checkRevision ( templateSpec . compiler ) ;
2020-01-07 15:37:37 -05:00
// backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)
var templateWasPrecompiledWithCompilerV7 = templateSpec . compiler && templateSpec . compiler [ 0 ] === 7 ;
2016-01-15 11:40:30 -05:00
function invokePartialWrapper ( partial , context , options ) {
if ( options . hash ) {
context = Utils . extend ( { } , context , options . hash ) ;
if ( options . ids ) {
options . ids [ 0 ] = true ;
}
}
partial = env . VM . resolvePartial . call ( this , partial , context , options ) ;
2020-01-07 15:37:37 -05:00
2020-04-07 11:01:02 -04:00
var extendedOptions = Utils . extend ( { } , options , {
hooks : this . hooks ,
protoAccessControl : this . protoAccessControl
} ) ;
2020-01-07 15:37:37 -05:00
2020-04-07 11:01:02 -04:00
var result = env . VM . invokePartial . call ( this , partial , context , extendedOptions ) ;
2016-01-15 11:40:30 -05:00
if ( result == null && env . compile ) {
options . partials [ options . name ] = env . compile ( partial , templateSpec . compilerOptions , env ) ;
2020-04-07 11:01:02 -04:00
result = options . partials [ options . name ] ( context , extendedOptions ) ;
2016-01-15 11:40:30 -05:00
}
if ( result != null ) {
if ( options . indent ) {
var lines = result . split ( '\n' ) ;
for ( var i = 0 , l = lines . length ; i < l ; i ++ ) {
if ( ! lines [ i ] && i + 1 === l ) {
break ;
}
lines [ i ] = options . indent + lines [ i ] ;
}
result = lines . join ( '\n' ) ;
}
return result ;
} else {
throw new _exception2 [ 'default' ] ( 'The partial ' + options . name + ' could not be compiled when running in runtime-only mode' ) ;
}
}
// Just add water
var container = {
2020-01-07 15:37:37 -05:00
strict : function strict ( obj , name , loc ) {
if ( ! obj || ! ( name in obj ) ) {
2020-04-07 11:01:02 -04:00
throw new _exception2 [ 'default' ] ( '"' + name + '" not defined in ' + obj , {
loc : loc
} ) ;
2016-01-15 11:40:30 -05:00
}
return obj [ name ] ;
} ,
2020-04-07 11:01:02 -04:00
lookupProperty : function lookupProperty ( parent , propertyName ) {
var result = parent [ propertyName ] ;
if ( result == null ) {
return result ;
}
if ( Object . prototype . hasOwnProperty . call ( parent , propertyName ) ) {
return result ;
}
if ( _internalProtoAccess . resultIsAllowed ( result , container . protoAccessControl , propertyName ) ) {
return result ;
}
return undefined ;
} ,
2016-01-15 11:40:30 -05:00
lookup : function lookup ( depths , name ) {
var len = depths . length ;
for ( var i = 0 ; i < len ; i ++ ) {
2020-04-07 11:01:02 -04:00
var result = depths [ i ] && container . lookupProperty ( depths [ i ] , name ) ;
if ( result != null ) {
2016-01-15 11:40:30 -05:00
return depths [ i ] [ name ] ;
}
}
} ,
lambda : function lambda ( current , context ) {
return typeof current === 'function' ? current . call ( context ) : current ;
} ,
escapeExpression : Utils . escapeExpression ,
invokePartial : invokePartialWrapper ,
fn : function fn ( i ) {
var ret = templateSpec [ i ] ;
ret . decorator = templateSpec [ i + '_d' ] ;
return ret ;
} ,
programs : [ ] ,
program : function program ( i , data , declaredBlockParams , blockParams , depths ) {
var programWrapper = this . programs [ i ] ,
fn = this . fn ( i ) ;
if ( data || depths || blockParams || declaredBlockParams ) {
programWrapper = wrapProgram ( this , i , fn , data , declaredBlockParams , blockParams , depths ) ;
} else if ( ! programWrapper ) {
programWrapper = this . programs [ i ] = wrapProgram ( this , i , fn ) ;
}
return programWrapper ;
} ,
data : function data ( value , depth ) {
while ( value && depth -- ) {
value = value . _parent ;
}
return value ;
} ,
2020-04-07 11:01:02 -04:00
mergeIfNeeded : function mergeIfNeeded ( param , common ) {
var obj = param || common ;
if ( param && common && param !== common ) {
obj = Utils . extend ( { } , common , param ) ;
}
return obj ;
} ,
2019-01-14 12:56:14 -05:00
// An empty object to use as replacement for null-contexts
nullContext : _Object$seal ( { } ) ,
2016-01-15 11:40:30 -05:00
noop : env . VM . noop ,
compilerInfo : templateSpec . compiler
} ;
function ret ( context ) {
var options = arguments . length <= 1 || arguments [ 1 ] === undefined ? { } : arguments [ 1 ] ;
var data = options . data ;
ret . _setup ( options ) ;
if ( ! options . partial && templateSpec . useData ) {
data = initData ( context , data ) ;
}
var depths = undefined ,
blockParams = templateSpec . useBlockParams ? [ ] : undefined ;
if ( templateSpec . useDepths ) {
if ( options . depths ) {
2019-01-14 12:56:14 -05:00
depths = context != options . depths [ 0 ] ? [ context ] . concat ( options . depths ) : options . depths ;
2016-01-15 11:40:30 -05:00
} else {
depths = [ context ] ;
}
}
function main ( context /*, options*/ ) {
return '' + templateSpec . main ( container , context , container . helpers , container . partials , data , blockParams , depths ) ;
}
2020-04-07 11:01:02 -04:00
2016-01-15 11:40:30 -05:00
main = executeDecorators ( templateSpec . main , main , container , options . depths || [ ] , data , blockParams ) ;
return main ( context , options ) ;
}
2020-04-07 11:01:02 -04:00
2016-01-15 11:40:30 -05:00
ret . isTop = true ;
ret . _setup = function ( options ) {
if ( ! options . partial ) {
2020-04-07 11:01:02 -04:00
var mergedHelpers = Utils . extend ( { } , env . helpers , options . helpers ) ;
wrapHelpersToPassLookupProperty ( mergedHelpers , container ) ;
container . helpers = mergedHelpers ;
2016-01-15 11:40:30 -05:00
if ( templateSpec . usePartial ) {
2020-04-07 11:01:02 -04:00
// Use mergeIfNeeded here to prevent compiling global partials multiple times
container . partials = container . mergeIfNeeded ( options . partials , env . partials ) ;
2016-01-15 11:40:30 -05:00
}
if ( templateSpec . usePartial || templateSpec . useDecorators ) {
2020-01-07 15:37:37 -05:00
container . decorators = Utils . extend ( { } , env . decorators , options . decorators ) ;
2016-01-15 11:40:30 -05:00
}
2020-01-07 15:37:37 -05:00
container . hooks = { } ;
2020-04-07 11:01:02 -04:00
container . protoAccessControl = _internalProtoAccess . createProtoAccessControl ( options ) ;
2020-01-07 15:37:37 -05:00
var keepHelperInHelpers = options . allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7 ;
_helpers . moveHelperToHooks ( container , 'helperMissing' , keepHelperInHelpers ) ;
_helpers . moveHelperToHooks ( container , 'blockHelperMissing' , keepHelperInHelpers ) ;
2016-01-15 11:40:30 -05:00
} else {
2020-04-07 11:01:02 -04:00
container . protoAccessControl = options . protoAccessControl ; // internal option
2016-01-15 11:40:30 -05:00
container . helpers = options . helpers ;
container . partials = options . partials ;
container . decorators = options . decorators ;
2020-01-07 15:37:37 -05:00
container . hooks = options . hooks ;
2016-01-15 11:40:30 -05:00
}
} ;
ret . _child = function ( i , data , blockParams , depths ) {
if ( templateSpec . useBlockParams && ! blockParams ) {
throw new _exception2 [ 'default' ] ( 'must pass block params' ) ;
}
if ( templateSpec . useDepths && ! depths ) {
throw new _exception2 [ 'default' ] ( 'must pass parent depths' ) ;
}
return wrapProgram ( container , i , templateSpec [ i ] , data , 0 , blockParams , depths ) ;
} ;
return ret ;
}
function wrapProgram ( container , i , fn , data , declaredBlockParams , blockParams , depths ) {
function prog ( context ) {
var options = arguments . length <= 1 || arguments [ 1 ] === undefined ? { } : arguments [ 1 ] ;
var currentDepths = depths ;
2019-01-14 12:56:14 -05:00
if ( depths && context != depths [ 0 ] && ! ( context === container . nullContext && depths [ 0 ] === null ) ) {
2016-01-15 11:40:30 -05:00
currentDepths = [ context ] . concat ( depths ) ;
}
return fn ( container , context , container . helpers , container . partials , options . data || data , blockParams && [ options . blockParams ] . concat ( blockParams ) , currentDepths ) ;
}
prog = executeDecorators ( fn , prog , container , depths , data , blockParams ) ;
prog . program = i ;
prog . depth = depths ? depths . length : 0 ;
prog . blockParams = declaredBlockParams || 0 ;
return prog ;
}
2020-01-07 15:37:37 -05:00
/ * *
* This is currently part of the official API , therefore implementation details should not be changed .
* /
2016-01-15 11:40:30 -05:00
function resolvePartial ( partial , context , options ) {
if ( ! partial ) {
if ( options . name === '@partial-block' ) {
partial = options . data [ 'partial-block' ] ;
} else {
partial = options . partials [ options . name ] ;
}
} else if ( ! partial . call && ! options . name ) {
// This is a dynamic partial that returned a string
options . name = partial ;
partial = options . partials [ partial ] ;
}
return partial ;
}
function invokePartial ( partial , context , options ) {
2019-01-14 12:56:14 -05:00
// Use the current closure context to save the partial-block if this partial
var currentPartialBlock = options . data && options . data [ 'partial-block' ] ;
2016-01-15 11:40:30 -05:00
options . partial = true ;
if ( options . ids ) {
options . data . contextPath = options . ids [ 0 ] || options . data . contextPath ;
}
var partialBlock = undefined ;
if ( options . fn && options . fn !== noop ) {
2019-01-14 12:56:14 -05:00
( function ( ) {
options . data = _base . createFrame ( options . data ) ;
// Wrapper function to get access to currentPartialBlock from the closure
var fn = options . fn ;
partialBlock = options . data [ 'partial-block' ] = function partialBlockWrapper ( context ) {
var options = arguments . length <= 1 || arguments [ 1 ] === undefined ? { } : arguments [ 1 ] ;
// Restore the partial-block from the closure for the execution of the block
// i.e. the part inside the block of the partial call.
options . data = _base . createFrame ( options . data ) ;
options . data [ 'partial-block' ] = currentPartialBlock ;
return fn ( context , options ) ;
} ;
if ( fn . partials ) {
options . partials = Utils . extend ( { } , options . partials , fn . partials ) ;
}
} ) ( ) ;
2016-01-15 11:40:30 -05:00
}
if ( partial === undefined && partialBlock ) {
partial = partialBlock ;
}
if ( partial === undefined ) {
throw new _exception2 [ 'default' ] ( 'The partial ' + options . name + ' could not be found' ) ;
} else if ( partial instanceof Function ) {
return partial ( context , options ) ;
}
}
function noop ( ) {
return '' ;
}
function initData ( context , data ) {
if ( ! data || ! ( 'root' in data ) ) {
data = data ? _base . createFrame ( data ) : { } ;
data . root = context ;
}
return data ;
}
function executeDecorators ( fn , prog , container , depths , data , blockParams ) {
if ( fn . decorator ) {
var props = { } ;
prog = fn . decorator ( prog , props , container , depths && depths [ 0 ] , data , blockParams , depths ) ;
Utils . extend ( prog , props ) ;
}
return prog ;
}
2020-04-07 11:01:02 -04:00
function wrapHelpersToPassLookupProperty ( mergedHelpers , container ) {
_Object$keys ( mergedHelpers ) . forEach ( function ( helperName ) {
var helper = mergedHelpers [ helperName ] ;
mergedHelpers [ helperName ] = passLookupPropertyOption ( helper , container ) ;
} ) ;
}
function passLookupPropertyOption ( helper , container ) {
var lookupProperty = container . lookupProperty ;
return _internalWrapHelper . wrapHelper ( helper , function ( options ) {
return Utils . extend ( { lookupProperty : lookupProperty } , options ) ;
} ) ;
}
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-04-07 11:01:02 -04:00
/* 38 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2020-04-07 11:01:02 -04:00
module . exports = { "default" : _ _webpack _require _ _ ( 39 ) , _ _esModule : true } ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-04-07 11:01:02 -04:00
/* 39 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
2020-04-07 11:01:02 -04:00
_ _webpack _require _ _ ( 40 ) ;
2020-01-07 15:37:37 -05:00
module . exports = _ _webpack _require _ _ ( 20 ) . Object . seal ;
2019-01-14 12:56:14 -05:00
/***/ } ) ,
2020-04-07 11:01:02 -04:00
/* 40 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
// 19.1.2.17 Object.seal(O)
2020-04-07 11:01:02 -04:00
var isObject = _ _webpack _require _ _ ( 41 ) ;
2019-01-14 12:56:14 -05:00
2020-01-07 15:37:37 -05:00
_ _webpack _require _ _ ( 17 ) ( 'seal' , function ( $seal ) {
2019-01-14 12:56:14 -05:00
return function seal ( it ) {
return $seal && isObject ( it ) ? $seal ( it ) : it ;
} ;
} ) ;
/***/ } ) ,
2020-04-07 11:01:02 -04:00
/* 41 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
module . exports = function ( it ) {
return typeof it === 'object' ? it !== null : typeof it === 'function' ;
} ;
/***/ } ) ,
2020-04-07 11:01:02 -04:00
/* 42 */
2019-01-14 12:56:14 -05:00
/***/ ( function ( module , exports ) {
2016-01-15 11:40:30 -05:00
'use strict' ;
2020-04-07 11:01:02 -04:00
exports . _ _esModule = true ;
exports . wrapHelper = wrapHelper ;
function wrapHelper ( helper , transformOptionsFn ) {
if ( typeof helper !== 'function' ) {
// This should not happen, but apparently it does in https://github.com/wycats/handlebars.js/issues/1639
// We try to make the wrapper least-invasive by not wrapping it, if the helper is not a function.
return helper ;
}
var wrapper = function wrapper ( ) /* dynamic arguments */ {
var options = arguments [ arguments . length - 1 ] ;
arguments [ arguments . length - 1 ] = transformOptionsFn ( options ) ;
return helper . apply ( this , arguments ) ;
} ;
return wrapper ;
}
/***/ } ) ,
/* 43 */
/***/ ( function ( module , exports ) {
/* WEBPACK VAR INJECTION */ ( function ( global ) { 'use strict' ;
2016-01-15 11:40:30 -05:00
exports . _ _esModule = true ;
exports [ 'default' ] = function ( Handlebars ) {
/* istanbul ignore next */
var root = typeof global !== 'undefined' ? global : window ,
$Handlebars = root . Handlebars ;
/* istanbul ignore next */
Handlebars . noConflict = function ( ) {
if ( root . Handlebars === Handlebars ) {
root . Handlebars = $Handlebars ;
}
return Handlebars ;
} ;
} ;
module . exports = exports [ 'default' ] ;
/* WEBPACK VAR INJECTION */ } . call ( exports , ( function ( ) { return this ; } ( ) ) ) )
2019-01-14 12:56:14 -05:00
/***/ } )
2016-01-15 11:40:30 -05:00
/******/ ] )
} ) ;
;