{"mappings":"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","names":["escape","badChars","possible","escapeChar","chr","extend","obj","i","key","toString","isFunction","value","exports","isArray","indexOf","array","len","escapeExpression","string","isEmpty","createFrame","object","frame","blockParams","params","ids","appendContextPath","contextPath","id","errorProps","Exception","message","node","loc","line","endLineNumber","column","endColumn","tmp","idx","instance","context","options","inverse","fn","_utils","data","closeIterator","iterator","_close","_utils","instance","context","options","_exception2","fn","inverse","i","ret","data","contextPath","execIteration","field","index","last","value","j","current","next","e","priorKey","key","instance","_exception2","instance","conditional","options","_exception2","_utils","instance","args","options","i","level","instance","obj","field","options","instance","context","options","_exception2","_utils","fn","data","registerDefaultHelpers","instance","_helpersBlockHelperMissing2","_helpersEach2","_helpersHelperMissing2","_helpersIf2","_helpersLog2","_helpersLookup2","_helpersWith2","moveHelperToHooks","helperName","keepHelper","instance","fn","props","container","options","ret","context","original","_utils","registerDefaultDecorators","instance","_decoratorsInline2","logger","level","levelMap","_utils","method","message","_len","_key","loggedProperties","createProtoAccessControl","runtimeOptions","propertyWhiteList","_utils","methodWhiteList","resultIsAllowed","result","protoAccessControl","propertyName","checkWhiteList","isPrototypeConstructor","parent","protoAccessControlForType","logUnexpecedPropertyAccessOnce","_logger2","resetLoggedProperties","VERSION","COMPILER_REVISION","LAST_COMPATIBLE_COMPILER_REVISION","REVISION_CHANGES","objectType","HandlebarsEnvironment","helpers","partials","decorators","_helpers","_decorators","_logger2","name","fn","_utils","_exception2","partial","_internalProtoAccess","log","SafeString","string","wrapHelper","helper","transformOptionsFn","wrapper","options","Utils","_interopRequireWildcard","_utils","checkRevision","compilerInfo","compilerRevision","currentRevision","_base","runtimeVersions","compilerVersions","_exception2","template","templateSpec","env","templateWasPrecompiledWithCompilerV7","invokePartialWrapper","partial","context","options","result","lines","i","l","container","obj","name","loc","parent","propertyName","_internalProtoAccess","depths","len","current","ret","data","declaredBlockParams","blockParams","programWrapper","fn","wrapProgram","value","depth","param","common","initData","main","executeDecorators","mergedHelpers","addHelpers","keepHelperInHelpers","_helpers","prog","currentDepths","resolvePartial","lookupOwnProperty","invokePartial","currentPartialBlock","partialBlock","noop","props","helpers","helperName","helper","passLookupPropertyOption","lookupProperty","_internalWrapHelper","Handlebars","$Handlebars","base","_interopRequireWildcard","_handlebarsBase","Utils","_handlebarsUtils","runtime","_handlebarsRuntime","create","hb","_handlebarsSafeString2","_handlebarsException2","spec","inst","_handlebarsNoConflict2","require_runtime","__commonJSMin","exports","module","cjsm","endpoint_default"],"sources":["../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/utils.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/exception.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/block-helper-missing.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/each.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/helper-missing.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/if.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/log.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/lookup.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers/with.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/helpers.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/decorators/inline.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/decorators.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/logger.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/internal/proto-access.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/base.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/safe-string.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/internal/wrapHelper.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/runtime.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars/no-conflict.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/lib/handlebars.runtime.js","../esm/npm/handlebars@4.7.10/node_modules/handlebars/runtime.js","endpoint.js"],"sourcesContent":["const escape = {\n  '\u0026': '\u0026amp;',\n  '\u003c': '\u0026lt;',\n  '\u003e': '\u0026gt;',\n  '\"': '\u0026quot;',\n  \"'\": '\u0026#x27;',\n  '`': '\u0026#x60;',\n  '=': '\u0026#x3D;'\n};\n\nconst badChars = /[\u0026\u003c\u003e\"'`=]/g,\n  possible = /[\u0026\u003c\u003e\"'`=]/;\n\nfunction escapeChar(chr) {\n  return escape[chr];\n}\n\nexport function extend(obj /* , ...source */) {\n  for (let i = 1; i \u003c arguments.length; i++) {\n    for (let key in arguments[i]) {\n      if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {\n        obj[key] = arguments[i][key];\n      }\n    }\n  }\n\n  return obj;\n}\n\nexport let toString = Object.prototype.toString;\n\n// Sourced from lodash\n// https://github.com/bestiejs/lodash/blob/master/LICENSE.txt\n/* eslint-disable func-style */\nlet isFunction = function(value) {\n  return typeof value === 'function';\n};\n// fallback for older versions of Chrome and Safari\n/* istanbul ignore next */\nif (isFunction(/x/)) {\n  isFunction = function(value) {\n    return (\n      typeof value === 'function' \u0026\u0026\n      toString.call(value) === '[object Function]'\n    );\n  };\n}\nexport { isFunction };\n/* eslint-enable func-style */\n\n/* istanbul ignore next */\nexport const isArray =\n  Array.isArray ||\n  function(value) {\n    return value \u0026\u0026 typeof value === 'object'\n      ? toString.call(value) === '[object Array]'\n      : false;\n  };\n\n// Older IE versions do not directly support indexOf so we must implement our own, sadly.\nexport function indexOf(array, value) {\n  for (let i = 0, len = array.length; i \u003c len; i++) {\n    if (array[i] === value) {\n      return i;\n    }\n  }\n  return -1;\n}\n\nexport function escapeExpression(string) {\n  if (typeof string !== 'string') {\n    // don't escape SafeStrings, since they're already safe. Other values with a\n    // \"toHTML\" key, e.g. from JSON context data, are escaped like any object.\n    if (string \u0026\u0026 typeof string.toHTML === 'function') {\n      return string.toHTML();\n    } else if (string == null) {\n      return '';\n    } else if (!string) {\n      return string + '';\n    }\n\n    // Force a string conversion as this will be done by the append regardless and\n    // the regex test will do this transparently behind the scenes, causing issues if\n    // an object's to string has escaped characters in it.\n    string = '' + string;\n  }\n\n  if (!possible.test(string)) {\n    return string;\n  }\n  return string.replace(badChars, escapeChar);\n}\n\nexport function isEmpty(value) {\n  if (!value \u0026\u0026 value !== 0) {\n    return true;\n  } else if (isArray(value) \u0026\u0026 value.length === 0) {\n    return true;\n  } else {\n    return false;\n  }\n}\n\nexport function createFrame(object) {\n  let frame = extend({}, object);\n  frame._parent = object;\n  return frame;\n}\n\nexport function blockParams(params, ids) {\n  params.path = ids;\n  return params;\n}\n\nexport function appendContextPath(contextPath, id) {\n  return (contextPath ? contextPath + '.' : '') + id;\n}\n","const errorProps = [\n  'description',\n  'fileName',\n  'lineNumber',\n  'endLineNumber',\n  'message',\n  'name',\n  'number',\n  'stack'\n];\n\nfunction Exception(message, node) {\n  let loc = node \u0026\u0026 node.loc,\n    line,\n    endLineNumber,\n    column,\n    endColumn;\n\n  // Hand-built ASTs may carry a partial loc; never let the location\n  // bookkeeping mask the actual error message.\n  if (loc \u0026\u0026 loc.start) {\n    line = loc.start.line;\n    column = loc.start.column;\n    if (loc.end) {\n      endLineNumber = loc.end.line;\n      endColumn = loc.end.column;\n    }\n\n    message += ' - ' + line + ':' + column;\n  }\n\n  let tmp = Error.prototype.constructor.call(this, message);\n\n  // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.\n  for (let idx = 0; idx \u003c errorProps.length; idx++) {\n    this[errorProps[idx]] = tmp[errorProps[idx]];\n  }\n\n  /* istanbul ignore else */\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, Exception);\n  }\n\n  try {\n    if (loc) {\n      this.lineNumber = line;\n      this.endLineNumber = endLineNumber;\n\n      // Work around issue under safari where we can't directly set the column value\n      /* istanbul ignore next */\n      if (Object.defineProperty) {\n        Object.defineProperty(this, 'column', {\n          value: column,\n          enumerable: true\n        });\n        Object.defineProperty(this, 'endColumn', {\n          value: endColumn,\n          enumerable: true\n        });\n      } else {\n        this.column = column;\n        this.endColumn = endColumn;\n      }\n    }\n  } catch (nop) {\n    /* Ignore if the browser is very particular */\n  }\n}\n\nException.prototype = new Error();\n\nexport default Exception;\n","import { appendContextPath, createFrame, isArray } from '../utils';\n\nexport default function(instance) {\n  instance.registerHelper('blockHelperMissing', function(context, options) {\n    let inverse = options.inverse,\n      fn = options.fn;\n\n    if (context === true) {\n      return fn(this);\n    } else if (context === false || context == null) {\n      return inverse(this);\n    } else if (isArray(context)) {\n      if (context.length \u003e 0) {\n        if (options.ids) {\n          options.ids = [options.name];\n        }\n\n        return instance.helpers.each(context, options);\n      } else {\n        return inverse(this);\n      }\n    } else {\n      if (options.data \u0026\u0026 options.ids) {\n        let data = createFrame(options.data);\n        data.contextPath = appendContextPath(\n          options.data.contextPath,\n          options.name\n        );\n        options = { data: data };\n      }\n\n      return fn(context, options);\n    }\n  });\n}\n","import {\n  appendContextPath,\n  blockParams,\n  createFrame,\n  isArray,\n  isFunction\n} from '../utils';\nimport Exception from '../exception';\n\n/**\n * Close an unfinished iterator after the block body threw, like for...of does,\n * so that generators can run their cleanup code.\n *\n * Errors thrown while closing, including by a `return` getter, are ignored:\n * the block's error is the cause and is the one the caller must see.\n *\n * @param {Iterator} iterator the iterator that was being consumed\n */\nfunction closeIterator(iterator) {\n  try {\n    let close = iterator.return;\n    if (isFunction(close)) {\n      close.call(iterator);\n    }\n  } catch (closeError) {\n    // NOP\n  }\n}\n\nexport default function(instance) {\n  instance.registerHelper('each', function(context, options) {\n    if (!options) {\n      throw new Exception('Must pass iterator to #each');\n    }\n\n    let fn = options.fn,\n      inverse = options.inverse,\n      i = 0,\n      ret = '',\n      data,\n      contextPath;\n\n    if (options.data \u0026\u0026 options.ids) {\n      contextPath =\n        appendContextPath(options.data.contextPath, options.ids[0]) + '.';\n    }\n\n    if (isFunction(context)) {\n      context = context.call(this);\n    }\n\n    if (options.data) {\n      data = createFrame(options.data);\n    }\n\n    function execIteration(field, index, last, value) {\n      if (data) {\n        data.key = field;\n        data.index = index;\n        data.first = index === 0;\n        data.last = !!last;\n\n        if (contextPath) {\n          data.contextPath = contextPath + field;\n        }\n      }\n\n      ret =\n        ret +\n        fn(value, {\n          data: data,\n          blockParams: blockParams([value, field], [contextPath + field, null])\n        });\n    }\n\n    if (context \u0026\u0026 typeof context === 'object') {\n      if (isArray(context)) {\n        for (let j = context.length; i \u003c j; i++) {\n          if (i in context) {\n            execIteration(i, i, i === context.length - 1, context[i]);\n          }\n        }\n      } else if (typeof Symbol === 'function' \u0026\u0026 context[Symbol.iterator]) {\n        const iterator = context[Symbol.iterator]();\n        let current = iterator.next();\n        while (!current.done) {\n          let next = iterator.next();\n          try {\n            execIteration(i, i, next.done, current.value);\n          } catch (e) {\n            if (!next.done) {\n              closeIterator(iterator);\n            }\n            throw e;\n          }\n          current = next;\n          i++;\n        }\n      } else {\n        let priorKey;\n\n        Object.keys(context).forEach(key =\u003e {\n          // We're running the iterations one step out of sync so we can detect\n          // the last iteration without have to scan the object twice and create\n          // an itermediate keys array.\n          if (priorKey !== undefined) {\n            execIteration(priorKey, i - 1, false, context[priorKey]);\n          }\n          priorKey = key;\n          i++;\n        });\n        if (priorKey !== undefined) {\n          execIteration(priorKey, i - 1, true, context[priorKey]);\n        }\n      }\n    }\n\n    if (i === 0) {\n      ret = inverse(this);\n    }\n\n    return ret;\n  });\n}\n","import Exception from '../exception';\n\nexport default function(instance) {\n  instance.registerHelper('helperMissing', function(/* [args, ]options */) {\n    if (arguments.length === 1) {\n      // A missing field in a {{foo}} construct.\n      return undefined;\n    } else {\n      // Someone is actually trying to call something, blow up.\n      throw new Exception(\n        'Missing helper: \"' + arguments[arguments.length - 1].name + '\"'\n      );\n    }\n  });\n}\n","import { isEmpty, isFunction } from '../utils';\nimport Exception from '../exception';\n\nexport default function(instance) {\n  instance.registerHelper('if', function(conditional, options) {\n    if (arguments.length != 2) {\n      throw new Exception('#if requires exactly one argument');\n    }\n    if (isFunction(conditional)) {\n      conditional = conditional.call(this);\n    }\n\n    // Default behavior is to render the positive path if the value is truthy and not empty.\n    // The `includeZero` option may be set to treat the condtional as purely not empty based on the\n    // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.\n    if ((!options.hash.includeZero \u0026\u0026 !conditional) || isEmpty(conditional)) {\n      return options.inverse(this);\n    } else {\n      return options.fn(this);\n    }\n  });\n\n  instance.registerHelper('unless', function(conditional, options) {\n    if (arguments.length != 2) {\n      throw new Exception('#unless requires exactly one argument');\n    }\n    return instance.helpers['if'].call(this, conditional, {\n      fn: options.inverse,\n      inverse: options.fn,\n      hash: options.hash\n    });\n  });\n}\n","export default function(instance) {\n  instance.registerHelper('log', function(/* message, options */) {\n    let args = [undefined],\n      options = arguments[arguments.length - 1];\n    for (let i = 0; i \u003c arguments.length - 1; i++) {\n      args.push(arguments[i]);\n    }\n\n    let level = 1;\n    if (options.hash.level != null) {\n      level = options.hash.level;\n    } else if (options.data \u0026\u0026 options.data.level != null) {\n      level = options.data.level;\n    }\n    args[0] = level;\n\n    instance.log(...args);\n  });\n}\n","export default function(instance) {\n  instance.registerHelper('lookup', function(obj, field, options) {\n    if (!obj) {\n      // Note for 5.0: Change to \"obj == null\" in 5.0\n      return obj;\n    }\n    return options.lookupProperty(obj, field);\n  });\n}\n","import {\n  appendContextPath,\n  blockParams,\n  createFrame,\n  isEmpty,\n  isFunction\n} from '../utils';\nimport Exception from '../exception';\n\nexport default function(instance) {\n  instance.registerHelper('with', function(context, options) {\n    if (arguments.length != 2) {\n      throw new Exception('#with requires exactly one argument');\n    }\n    if (isFunction(context)) {\n      context = context.call(this);\n    }\n\n    let fn = options.fn;\n\n    if (!isEmpty(context)) {\n      let data = options.data;\n      if (options.data \u0026\u0026 options.ids) {\n        data = createFrame(options.data);\n        data.contextPath = appendContextPath(\n          options.data.contextPath,\n          options.ids[0]\n        );\n      }\n\n      return fn(context, {\n        data: data,\n        blockParams: blockParams([context], [data \u0026\u0026 data.contextPath])\n      });\n    } else {\n      return options.inverse(this);\n    }\n  });\n}\n","import registerBlockHelperMissing from './helpers/block-helper-missing';\nimport registerEach from './helpers/each';\nimport registerHelperMissing from './helpers/helper-missing';\nimport registerIf from './helpers/if';\nimport registerLog from './helpers/log';\nimport registerLookup from './helpers/lookup';\nimport registerWith from './helpers/with';\n\nexport function registerDefaultHelpers(instance) {\n  registerBlockHelperMissing(instance);\n  registerEach(instance);\n  registerHelperMissing(instance);\n  registerIf(instance);\n  registerLog(instance);\n  registerLookup(instance);\n  registerWith(instance);\n}\n\nexport function moveHelperToHooks(instance, helperName, keepHelper) {\n  if (instance.helpers[helperName]) {\n    instance.hooks[helperName] = instance.helpers[helperName];\n    if (!keepHelper) {\n      // Using delete is slow\n      instance.helpers[helperName] = undefined;\n    }\n  }\n}\n","import { extend } from '../utils';\n\nexport default function(instance) {\n  instance.registerDecorator('inline', function(fn, props, container, options) {\n    let ret = fn;\n    if (!props.partials) {\n      props.partials = {};\n      ret = function(context, options) {\n        // Create a new partials stack frame prior to exec.\n        let original = container.partials;\n        container.partials = extend({}, original, props.partials);\n        let ret = fn(context, options);\n        container.partials = original;\n        return ret;\n      };\n    }\n\n    props.partials[options.args[0]] = options.fn;\n\n    return ret;\n  });\n}\n","import registerInline from './decorators/inline';\n\nexport function registerDefaultDecorators(instance) {\n  registerInline(instance);\n}\n","import { indexOf } from './utils';\n\nlet logger = {\n  methodMap: ['debug', 'info', 'warn', 'error'],\n  level: 'info',\n\n  // Maps a given level value to the `methodMap` indexes above.\n  lookupLevel: function(level) {\n    if (typeof level === 'string') {\n      let levelMap = indexOf(logger.methodMap, level.toLowerCase());\n      if (levelMap \u003e= 0) {\n        level = levelMap;\n      } else {\n        level = parseInt(level, 10);\n      }\n    }\n\n    return level;\n  },\n\n  // Can be overridden in the host environment\n  log: function(level, ...message) {\n    level = logger.lookupLevel(level);\n\n    if (\n      typeof console !== 'undefined' \u0026\u0026\n      logger.lookupLevel(logger.level) \u003c= level\n    ) {\n      let method = logger.methodMap[level];\n      // eslint-disable-next-line no-console\n      if (!console[method]) {\n        method = 'log';\n      }\n      console[method](...message); // eslint-disable-line no-console\n    }\n  }\n};\n\nexport default logger;\n","import { extend } from '../utils';\nimport logger from '../logger';\n\nconst loggedProperties = Object.create(null);\n\nexport function createProtoAccessControl(runtimeOptions) {\n  // Create an object with \"null\"-prototype to avoid truthy results on\n  // prototype properties.\n  const propertyWhiteList = Object.create(null);\n  // eslint-disable-next-line no-proto\n  propertyWhiteList['__proto__'] = false;\n  extend(propertyWhiteList, runtimeOptions.allowedProtoProperties);\n\n  const methodWhiteList = Object.create(null);\n  methodWhiteList['constructor'] = false;\n  methodWhiteList['__defineGetter__'] = false;\n  methodWhiteList['__defineSetter__'] = false;\n  methodWhiteList['__lookupGetter__'] = false;\n  methodWhiteList['__lookupSetter__'] = false;\n  extend(methodWhiteList, runtimeOptions.allowedProtoMethods);\n\n  return {\n    properties: {\n      whitelist: propertyWhiteList,\n      defaultValue: runtimeOptions.allowProtoPropertiesByDefault\n    },\n    methods: {\n      whitelist: methodWhiteList,\n      defaultValue: runtimeOptions.allowProtoMethodsByDefault\n    }\n  };\n}\n\nexport function resultIsAllowed(result, protoAccessControl, propertyName) {\n  if (typeof result === 'function') {\n    return checkWhiteList(protoAccessControl.methods, propertyName);\n  } else {\n    return checkWhiteList(protoAccessControl.properties, propertyName);\n  }\n}\n\n/**\n * Detect a prototype object's own \"constructor\" back-reference, e.g.\n * `Function.prototype.constructor === Function`. Because \"constructor\" is an\n * \"own\" property of such objects, it would otherwise bypass the prototype-access\n * checks and expose dangerous constructors (allowing arbitrary code execution).\n *\n * Only functions can be constructors, so other values are never treated as one\n * and their `prototype` is never read.\n *\n * @param {*} parent the object the property is being read from\n * @param {string} propertyName the property being looked up\n * @param {*} result the already-resolved value of `parent[propertyName]`\n * @returns {boolean} true if the lookup resolves `parent`'s own constructor\n */\nexport function isPrototypeConstructor(parent, propertyName, result) {\n  return (\n    propertyName === 'constructor' \u0026\u0026\n    typeof result === 'function' \u0026\u0026\n    parent === result.prototype\n  );\n}\n\nfunction checkWhiteList(protoAccessControlForType, propertyName) {\n  if (protoAccessControlForType.whitelist[propertyName] !== undefined) {\n    return protoAccessControlForType.whitelist[propertyName] === true;\n  }\n  if (protoAccessControlForType.defaultValue !== undefined) {\n    return protoAccessControlForType.defaultValue;\n  }\n  logUnexpecedPropertyAccessOnce(propertyName);\n  return false;\n}\n\nfunction logUnexpecedPropertyAccessOnce(propertyName) {\n  if (loggedProperties[propertyName] !== true) {\n    loggedProperties[propertyName] = true;\n    logger.log(\n      'error',\n      `Handlebars: Access has been denied to resolve the property \"${propertyName}\" because it is not an \"own property\" of its parent.\\n` +\n        `You can add a runtime option to disable the check or this warning:\\n` +\n        `See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`\n    );\n  }\n}\n\nexport function resetLoggedProperties() {\n  Object.keys(loggedProperties).forEach(propertyName =\u003e {\n    delete loggedProperties[propertyName];\n  });\n}\n","import { createFrame, extend, toString } from './utils';\nimport Exception from './exception';\nimport { registerDefaultHelpers } from './helpers';\nimport { registerDefaultDecorators } from './decorators';\nimport logger from './logger';\nimport { resetLoggedProperties } from './internal/proto-access';\n\nexport const VERSION = '4.7.10';\nexport const COMPILER_REVISION = 8;\nexport const LAST_COMPATIBLE_COMPILER_REVISION = 7;\n\nexport const REVISION_CHANGES = {\n  1: '\u003c= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it\n  2: '== 1.0.0-rc.3',\n  3: '== 1.0.0-rc.4',\n  4: '== 1.x.x',\n  5: '== 2.0.0-alpha.x',\n  6: '\u003e= 2.0.0-beta.1',\n  7: '\u003e= 4.0.0 \u003c4.3.0',\n  8: '\u003e= 4.3.0'\n};\n\nconst objectType = '[object Object]';\n\nexport function HandlebarsEnvironment(helpers, partials, decorators) {\n  this.helpers = helpers || {};\n  this.partials = partials || {};\n  this.decorators = decorators || {};\n\n  registerDefaultHelpers(this);\n  registerDefaultDecorators(this);\n}\n\nHandlebarsEnvironment.prototype = {\n  constructor: HandlebarsEnvironment,\n\n  logger: logger,\n  log: logger.log,\n\n  registerHelper: function(name, fn) {\n    if (toString.call(name) === objectType) {\n      if (fn) {\n        throw new Exception('Arg not supported with multiple helpers');\n      }\n      extend(this.helpers, name);\n    } else {\n      this.helpers[name] = fn;\n    }\n  },\n  unregisterHelper: function(name) {\n    delete this.helpers[name];\n  },\n\n  registerPartial: function(name, partial) {\n    if (toString.call(name) === objectType) {\n      extend(this.partials, name);\n    } else {\n      if (typeof partial === 'undefined') {\n        throw new Exception(\n          `Attempting to register a partial called \"${name}\" as undefined`\n        );\n      }\n      this.partials[name] = partial;\n    }\n  },\n  unregisterPartial: function(name) {\n    delete this.partials[name];\n  },\n\n  registerDecorator: function(name, fn) {\n    if (toString.call(name) === objectType) {\n      if (fn) {\n        throw new Exception('Arg not supported with multiple decorators');\n      }\n      extend(this.decorators, name);\n    } else {\n      this.decorators[name] = fn;\n    }\n  },\n  unregisterDecorator: function(name) {\n    delete this.decorators[name];\n  },\n  /**\n   * Reset the memory of illegal property accesses that have already been logged.\n   * @deprecated should only be used in handlebars test-cases\n   */\n  resetLoggedPropertyAccesses() {\n    resetLoggedProperties();\n  }\n};\n\nexport let log = logger.log;\n\nexport { createFrame, logger };\n","// Build out our basic SafeString type\nfunction SafeString(string) {\n  this.string = string;\n}\n\nSafeString.prototype.toString = SafeString.prototype.toHTML = function() {\n  return '' + this.string;\n};\n\nexport default SafeString;\n","export function wrapHelper(helper, transformOptionsFn) {\n  if (typeof helper !== 'function') {\n    // This should not happen, but apparently it does in https://github.com/wycats/handlebars.js/issues/1639\n    // We try to make the wrapper least-invasive by not wrapping it, if the helper is not a function.\n    return helper;\n  }\n  let wrapper = function(/* dynamic arguments */) {\n    const options = arguments[arguments.length - 1];\n    arguments[arguments.length - 1] = transformOptionsFn(options);\n    return helper.apply(this, arguments);\n  };\n  return wrapper;\n}\n","import * as Utils from './utils';\nimport Exception from './exception';\nimport {\n  COMPILER_REVISION,\n  createFrame,\n  LAST_COMPATIBLE_COMPILER_REVISION,\n  REVISION_CHANGES\n} from './base';\nimport { moveHelperToHooks } from './helpers';\nimport { wrapHelper } from './internal/wrapHelper';\nimport {\n  createProtoAccessControl,\n  resultIsAllowed,\n  isPrototypeConstructor\n} from './internal/proto-access';\n\nexport function checkRevision(compilerInfo) {\n  const compilerRevision = (compilerInfo \u0026\u0026 compilerInfo[0]) || 1,\n    currentRevision = COMPILER_REVISION;\n\n  if (\n    compilerRevision \u003e= LAST_COMPATIBLE_COMPILER_REVISION \u0026\u0026\n    compilerRevision \u003c= COMPILER_REVISION\n  ) {\n    return;\n  }\n\n  if (compilerRevision \u003c LAST_COMPATIBLE_COMPILER_REVISION) {\n    const runtimeVersions = REVISION_CHANGES[currentRevision],\n      compilerVersions = REVISION_CHANGES[compilerRevision];\n    throw new Exception(\n      'Template was precompiled with an older version of Handlebars than the current runtime. ' +\n        'Please update your precompiler to a newer version (' +\n        runtimeVersions +\n        ') or downgrade your runtime to an older version (' +\n        compilerVersions +\n        ').'\n    );\n  } else {\n    // Use the embedded version info since the runtime doesn't know about this revision yet\n    throw new Exception(\n      'Template was precompiled with a newer version of Handlebars than the current runtime. ' +\n        'Please update your runtime to a newer version (' +\n        compilerInfo[1] +\n        ').'\n    );\n  }\n}\n\nexport function template(templateSpec, env) {\n  /* istanbul ignore next */\n  if (!env) {\n    throw new Exception('No environment passed to template');\n  }\n  if (!templateSpec || !templateSpec.main) {\n    throw new Exception('Unknown template object: ' + typeof templateSpec);\n  }\n\n  templateSpec.main.decorator = templateSpec.main_d;\n\n  // Note: Using env.VM references rather than local var references throughout this section to allow\n  // for external users to override these as pseudo-supported APIs.\n  env.VM.checkRevision(templateSpec.compiler);\n\n  // backwards compatibility for precompiled templates with compiler-version 7 (\u003c4.3.0)\n  const templateWasPrecompiledWithCompilerV7 =\n    templateSpec.compiler \u0026\u0026 templateSpec.compiler[0] === 7;\n\n  function invokePartialWrapper(partial, context, options) {\n    if (options.hash) {\n      context = Utils.extend({}, context, options.hash);\n      if (options.ids) {\n        options.ids[0] = true;\n      }\n    }\n    partial = env.VM.resolvePartial.call(this, partial, context, options);\n\n    options.hooks = this.hooks;\n    options.protoAccessControl = this.protoAccessControl;\n\n    let result = env.VM.invokePartial.call(this, partial, context, options);\n\n    // An empty result normally means the partial is template source that still\n    // has to be compiled. A function partial has already been invoked, so an\n    // empty result from it is a bug in that partial.\n    if (result == null \u0026\u0026 Utils.isFunction(partial)) {\n      throw new Exception(\n        'The partial ' +\n          options.name +\n          ' returned no output: partials must return a string'\n      );\n    }\n\n    if (result == null \u0026\u0026 env.compile) {\n      // Only template source registered as a partial may be compiled here.\n      // Anything else (e.g. an AST-shaped object) must not become code.\n      if (typeof partial !== 'string') {\n        throw new Exception(\n          'The partial ' +\n            options.name +\n            ' could not be compiled: partials must be strings or functions returning strings'\n        );\n      }\n      options.partials[options.name] = env.compile(\n        partial,\n        templateSpec.compilerOptions,\n        env\n      );\n      result = options.partials[options.name](context, options);\n    }\n    if (result != null) {\n      if (options.indent) {\n        let lines = result.split('\\n');\n        for (let i = 0, l = lines.length; i \u003c l; i++) {\n          if (!lines[i] \u0026\u0026 i + 1 === l) {\n            break;\n          }\n\n          lines[i] = options.indent + lines[i];\n        }\n        result = lines.join('\\n');\n      }\n      return result;\n    } else {\n      throw new Exception(\n        'The partial ' +\n          options.name +\n          ' could not be compiled when running in runtime-only mode'\n      );\n    }\n  }\n\n  // Just add water\n  let container = {\n    strict: function(obj, name, loc) {\n      if (!obj || !(name in obj)) {\n        throw new Exception('\"' + name + '\" not defined in ' + obj, {\n          loc: loc\n        });\n      }\n      return container.lookupProperty(obj, name);\n    },\n    lookupProperty: function(parent, propertyName) {\n      let result = parent[propertyName];\n      if (result == null) {\n        return result;\n      }\n      // Own properties are trusted context data and returned as-is, except for\n      // a prototype's own \"constructor\" back-reference (e.g.\n      // Function.prototype.constructor === Function): that must still pass the\n      // prototype-access deny list, otherwise the Function constructor becomes\n      // reachable and arbitrary code can be executed.\n      if (\n        Object.prototype.hasOwnProperty.call(parent, propertyName) \u0026\u0026\n        !isPrototypeConstructor(parent, propertyName, result)\n      ) {\n        return result;\n      }\n\n      if (resultIsAllowed(result, container.protoAccessControl, propertyName)) {\n        return result;\n      }\n      return undefined;\n    },\n    lookup: function(depths, name) {\n      const len = depths.length;\n      for (let i = 0; i \u003c len; i++) {\n        let result = depths[i] \u0026\u0026 container.lookupProperty(depths[i], name);\n        if (result != null) {\n          return result;\n        }\n      }\n    },\n    lambda: function(current, context) {\n      return typeof current === 'function' ? current.call(context) : current;\n    },\n\n    escapeExpression: Utils.escapeExpression,\n    invokePartial: invokePartialWrapper,\n\n    fn: function(i) {\n      let ret = templateSpec[i];\n      ret.decorator = templateSpec[i + '_d'];\n      return ret;\n    },\n\n    programs: [],\n    program: function(i, data, declaredBlockParams, blockParams, depths) {\n      let programWrapper = this.programs[i],\n        fn = this.fn(i);\n      if (data || depths || blockParams || declaredBlockParams) {\n        programWrapper = wrapProgram(\n          this,\n          i,\n          fn,\n          data,\n          declaredBlockParams,\n          blockParams,\n          depths\n        );\n      } else if (!programWrapper) {\n        programWrapper = this.programs[i] = wrapProgram(this, i, fn);\n      }\n      return programWrapper;\n    },\n\n    data: function(value, depth) {\n      while (value \u0026\u0026 depth--) {\n        value = value._parent;\n      }\n      return value;\n    },\n    mergeIfNeeded: function(param, common) {\n      let obj = param || common;\n\n      if (param \u0026\u0026 common \u0026\u0026 param !== common) {\n        obj = Utils.extend({}, common, param);\n      }\n\n      return obj;\n    },\n    // An empty object to use as replacement for null-contexts\n    nullContext: Object.seal({}),\n\n    noop: env.VM.noop,\n    compilerInfo: templateSpec.compiler\n  };\n\n  function ret(context, options = {}) {\n    let data = options.data;\n\n    ret._setup(options);\n    if (!options.partial \u0026\u0026 templateSpec.useData) {\n      data = initData(context, data);\n    }\n    let depths,\n      blockParams = templateSpec.useBlockParams ? [] : undefined;\n    if (templateSpec.useDepths) {\n      if (options.depths) {\n        depths =\n          context != options.depths[0]\n            ? [context].concat(options.depths)\n            : options.depths;\n      } else {\n        depths = [context];\n      }\n    }\n\n    function main(context /*, options*/) {\n      return (\n        '' +\n        templateSpec.main(\n          container,\n          context,\n          container.helpers,\n          container.partials,\n          data,\n          blockParams,\n          depths\n        )\n      );\n    }\n\n    main = executeDecorators(\n      templateSpec.main,\n      main,\n      container,\n      options.depths || [],\n      data,\n      blockParams\n    );\n    return main(context, options);\n  }\n\n  ret.isTop = true;\n\n  ret._setup = function(options) {\n    if (!options.partial) {\n      let mergedHelpers = {};\n      addHelpers(mergedHelpers, env.helpers, container);\n      addHelpers(mergedHelpers, options.helpers, container);\n      container.helpers = mergedHelpers;\n\n      if (templateSpec.usePartial) {\n        // Use mergeIfNeeded here to prevent compiling global partials multiple times\n        container.partials = container.mergeIfNeeded(\n          options.partials,\n          env.partials\n        );\n      }\n      if (templateSpec.usePartial || templateSpec.useDecorators) {\n        container.decorators = Utils.extend(\n          {},\n          env.decorators,\n          options.decorators\n        );\n      }\n\n      container.hooks = {};\n      container.protoAccessControl = createProtoAccessControl(options);\n\n      let keepHelperInHelpers =\n        options.allowCallsToHelperMissing ||\n        templateWasPrecompiledWithCompilerV7;\n      moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);\n      moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);\n    } else {\n      container.protoAccessControl = options.protoAccessControl; // internal option\n      container.helpers = options.helpers;\n      container.partials = options.partials;\n      container.decorators = options.decorators;\n      container.hooks = options.hooks;\n    }\n  };\n\n  ret._child = function(i, data, blockParams, depths) {\n    if (templateSpec.useBlockParams \u0026\u0026 !blockParams) {\n      throw new Exception('must pass block params');\n    }\n    if (templateSpec.useDepths \u0026\u0026 !depths) {\n      throw new Exception('must pass parent depths');\n    }\n\n    return wrapProgram(\n      container,\n      i,\n      templateSpec[i],\n      data,\n      0,\n      blockParams,\n      depths\n    );\n  };\n  return ret;\n}\n\nexport function wrapProgram(\n  container,\n  i,\n  fn,\n  data,\n  declaredBlockParams,\n  blockParams,\n  depths\n) {\n  function prog(context, options = {}) {\n    let currentDepths = depths;\n    if (\n      depths \u0026\u0026\n      context != depths[0] \u0026\u0026\n      !(context === container.nullContext \u0026\u0026 depths[0] === null)\n    ) {\n      currentDepths = [context].concat(depths);\n    }\n\n    return fn(\n      container,\n      context,\n      container.helpers,\n      container.partials,\n      options.data || data,\n      blockParams \u0026\u0026 [options.blockParams].concat(blockParams),\n      currentDepths\n    );\n  }\n\n  prog = executeDecorators(fn, prog, container, depths, data, blockParams);\n\n  prog.program = i;\n  prog.depth = depths ? depths.length : 0;\n  prog.blockParams = declaredBlockParams || 0;\n  return prog;\n}\n\n/**\n * This is currently part of the official API, therefore implementation details should not be changed.\n */\nexport function resolvePartial(partial, context, options) {\n  if (!partial) {\n    if (options.name === '@partial-block') {\n      partial = lookupOwnProperty(options.data, 'partial-block');\n    } else {\n      partial = lookupOwnProperty(options.partials, options.name);\n    }\n  } else if (typeof partial !== 'function' \u0026\u0026 !options.name) {\n    // This is a dynamic partial that returned a name rather than a compiled\n    // partial. Only functions are accepted as partials here; any other value\n    // (including an object with a \"call\" property) is treated as a name, so\n    // that context data can never be compiled as a template.\n    options.name = partial;\n    partial = lookupOwnProperty(options.partials, partial);\n  }\n  return partial;\n}\n\nexport function invokePartial(partial, context, options) {\n  // Use the current closure context to save the partial-block if this partial\n  const currentPartialBlock = lookupOwnProperty(options.data, 'partial-block');\n  options.partial = true;\n  if (options.ids) {\n    options.data.contextPath = options.ids[0] || options.data.contextPath;\n  }\n\n  let partialBlock;\n  if (options.fn \u0026\u0026 options.fn !== noop) {\n    options.data = createFrame(options.data);\n    // Wrapper function to get access to currentPartialBlock from the closure\n    let fn = options.fn;\n    partialBlock = options.data['partial-block'] = function partialBlockWrapper(\n      context,\n      options = {}\n    ) {\n      // Restore the partial-block from the closure for the execution of the block\n      // i.e. the part inside the block of the partial call.\n      options.data = createFrame(options.data);\n      options.data['partial-block'] = currentPartialBlock;\n      return fn(context, options);\n    };\n    if (fn.partials) {\n      options.partials = Utils.extend({}, options.partials, fn.partials);\n    }\n  }\n\n  if (partial === undefined \u0026\u0026 partialBlock) {\n    partial = partialBlock;\n  }\n\n  if (partial === undefined) {\n    throw new Exception('The partial ' + options.name + ' could not be found');\n  } else if (partial instanceof Function) {\n    return partial(context, options);\n  }\n}\n\nexport function noop() {\n  return '';\n}\n\nfunction lookupOwnProperty(obj, name) {\n  if (obj \u0026\u0026 Object.prototype.hasOwnProperty.call(obj, name)) {\n    return obj[name];\n  }\n}\n\nfunction initData(context, data) {\n  if (!data || !('root' in data)) {\n    data = data ? createFrame(data) : {};\n    data.root = context;\n  }\n  return data;\n}\n\nfunction executeDecorators(fn, prog, container, depths, data, blockParams) {\n  if (fn.decorator) {\n    let props = {};\n    prog = fn.decorator(\n      prog,\n      props,\n      container,\n      depths \u0026\u0026 depths[0],\n      data,\n      blockParams,\n      depths\n    );\n    Utils.extend(prog, props);\n  }\n  return prog;\n}\n\nfunction addHelpers(mergedHelpers, helpers, container) {\n  if (!helpers) return;\n  Object.keys(helpers).forEach(helperName =\u003e {\n    let helper = helpers[helperName];\n    mergedHelpers[helperName] = passLookupPropertyOption(helper, container);\n  });\n}\n\nfunction passLookupPropertyOption(helper, container) {\n  const lookupProperty = container.lookupProperty;\n  return wrapHelper(helper, options =\u003e {\n    options.lookupProperty = lookupProperty;\n    return options;\n  });\n}\n","/* global globalThis */\nexport default function(Handlebars) {\n  /* istanbul ignore next */\n  // https://mathiasbynens.be/notes/globalthis\n  (function() {\n    if (typeof globalThis === 'object') return;\n    Object.prototype.__defineGetter__('__magic__', function() {\n      return this;\n    });\n    __magic__.globalThis = __magic__; // eslint-disable-line no-undef\n    delete Object.prototype.__magic__;\n  })();\n\n  const $Handlebars = globalThis.Handlebars;\n\n  /* istanbul ignore next */\n  Handlebars.noConflict = function() {\n    if (globalThis.Handlebars === Handlebars) {\n      globalThis.Handlebars = $Handlebars;\n    }\n    return Handlebars;\n  };\n}\n","import * as base from './handlebars/base';\n\n// Each of these augment the Handlebars object. No need to setup here.\n// (This is done to easily share code between commonjs and browse envs)\nimport SafeString from './handlebars/safe-string';\nimport Exception from './handlebars/exception';\nimport * as Utils from './handlebars/utils';\nimport * as runtime from './handlebars/runtime';\n\nimport noConflict from './handlebars/no-conflict';\n\n// For compatibility and usage outside of module systems, make the Handlebars object a namespace\nfunction create() {\n  let hb = new base.HandlebarsEnvironment();\n\n  Utils.extend(hb, base);\n  hb.SafeString = SafeString;\n  hb.Exception = Exception;\n  hb.Utils = Utils;\n  hb.escapeExpression = Utils.escapeExpression;\n\n  hb.VM = runtime;\n  hb.template = function(spec) {\n    return runtime.template(spec, hb);\n  };\n\n  return hb;\n}\n\nlet inst = create();\ninst.create = create;\n\nnoConflict(inst);\n\ninst['default'] = inst;\n\nexport default inst;\n","// Create a simple path alias to allow browserify to resolve\n// the runtime on a supported path.\nmodule.exports = require('./dist/cjs/handlebars.runtime')['default'];\n","import * as cjsm from \"handlebars/runtime\";export default cjsm.default ?? cjsm;"],"version":3}
