{
  "version": 3,
  "sources": ["../../../../common/src/client/hooks/useBrowserLayoutEffect.ts", "../../../../common/src/client/utils/isBrowser.ts", "../../../../common/src/client/utils/ensureSingleScript.ts", "../../../../common/src/client/utils/importUtils.ts", "../../../../../node_modules/lodash-es/assign.js"],
  "sourcesContent": ["import { noop } from 'radashi';\nimport { useLayoutEffect } from 'react';\n\nconst isClient = typeof window !== 'undefined';\n\n/**\n * A hook that runs useLayoutEffect but only on the client.\n *\n * On the server it throws a nastly warning (that's not supressible).\n *\n * This is a workaround suggested in\n * https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\n */\nexport const useBrowserLayoutEffect: typeof useLayoutEffect = isClient ? useLayoutEffect : noop;\n", "/**\n * Returns whether this is running in a browser.\n *\n * Based on: https://www.npmjs.com/package/exenv and should match what React uses.\n *\n * This is a function to allow mocking in tests.\n */\nexport const isBrowser = (): boolean =>\n  !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n", "/**\n * Given a script element id, will wait for script to load if it is already on the DOM. If a script\n * element with the given ID does not exist on the DOM, then add it and wait for it to load.\n */\nexport function ensureSingleScript(\n  scriptId: string,\n  source: string,\n  onLoaded: () => void,\n  attributes?: Record<string, string>\n): void {\n  // const scriptId = 'akamai-player-script';\n  const scriptElement = document.getElementById(scriptId);\n\n  // If already loaded, call callback.\n  if (scriptElement?.dataset.loaded) {\n    onLoaded();\n    return;\n  }\n\n  const markLoadedAndCallback = () => {\n    document.getElementById(scriptId)!.dataset.loaded = 'true';\n    onLoaded();\n  };\n\n  // If loading, but hasn't finished, listen for load.\n  if (scriptElement) {\n    scriptElement.addEventListener('load', markLoadedAndCallback);\n    return;\n  }\n\n  // Else start loading.\n  const newScriptElement = document.createElement('script');\n  newScriptElement.id = scriptId;\n  newScriptElement.src = source;\n\n  if (attributes) {\n    for (const key in attributes) {\n      newScriptElement.setAttribute(key, attributes[key] ?? '');\n    }\n  }\n\n  newScriptElement.addEventListener('load', markLoadedAndCallback);\n  document.head.appendChild(newScriptElement);\n}\n", "import type { ComponentType, LazyExoticComponent } from 'react';\nimport { lazy } from 'react';\n\n/**\n * Wrapper to untangle imports that do not have default exports\n *\n * Based on https://github.com/fuse-box/fuse-box/issues/1646#issuecomment-572242548\n */\n// eslint-disable-next-line import/no-unused-modules\nexport function lazyComponent(\n  factory: () => Promise<{ default: ComponentType<any> }>\n): LazyExoticComponent<ComponentType<any>> {\n  const defaultDynamicImport = async () => {\n    const componentModule = await factory();\n    return typeof componentModule.default === 'function'\n      ? componentModule\n      : componentModule.default;\n  };\n\n  return lazy(defaultDynamicImport);\n}\n", "import assignValue from './_assignValue.js';\nimport copyObject from './_copyObject.js';\nimport createAssigner from './_createAssigner.js';\nimport isArrayLike from './isArrayLike.js';\nimport isPrototype from './_isPrototype.js';\nimport keys from './keys.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n *   this.a = 1;\n * }\n *\n * function Bar() {\n *   this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\nvar assign = createAssigner(function(object, source) {\n  if (isPrototype(source) || isArrayLike(source)) {\n    copyObject(source, keys(source), object);\n    return;\n  }\n  for (var key in source) {\n    if (hasOwnProperty.call(source, key)) {\n      assignValue(object, key, source[key]);\n    }\n  }\n});\n\nexport default assign;\n"],
  "mappings": ";;;;;;;;;;;;;gKACA,IAAAA,EAAgC,OAE1BC,EAAW,OAAO,OAAW,IAUtBC,EAAiDD,EAAW,kBAAkBE,ECNpF,IAAMC,EAAY,IACvB,CAAC,EAAE,OAAO,OAAW,KAAe,OAAO,UAAY,OAAO,SAAS,eCJlE,SAASC,EACdC,EACAC,EACAC,EACAC,EACM,CAEN,IAAMC,EAAgB,SAAS,eAAeJ,CAAQ,EAGtD,GAAII,GAAe,QAAQ,OAAQ,CACjCF,EAAS,EACT,MACF,CAEA,IAAMG,EAAwB,IAAM,CAClC,SAAS,eAAeL,CAAQ,EAAG,QAAQ,OAAS,OACpDE,EAAS,CACX,EAGA,GAAIE,EAAe,CACjBA,EAAc,iBAAiB,OAAQC,CAAqB,EAC5D,MACF,CAGA,IAAMC,EAAmB,SAAS,cAAc,QAAQ,EAIxD,GAHAA,EAAiB,GAAKN,EACtBM,EAAiB,IAAML,EAEnBE,EACF,QAAWI,KAAOJ,EAChBG,EAAiB,aAAaC,EAAKJ,EAAWI,CAAG,GAAK,EAAE,EAI5DD,EAAiB,iBAAiB,OAAQD,CAAqB,EAC/D,SAAS,KAAK,YAAYC,CAAgB,CAC5C,CC1CA,IAAAE,EAAqB,OAQd,SAASC,EACdC,EACyC,CAQzC,SAAO,QAPsB,SAAY,CACvC,IAAMC,EAAkB,MAAMD,EAAQ,EACtC,OAAO,OAAOC,EAAgB,SAAY,WACtCA,EACAA,EAAgB,OACtB,CAEgC,CAClC,CCZA,IAAIC,EAAc,OAAO,UAGrBC,EAAiBD,EAAY,eAkC7BE,EAASC,EAAe,SAASC,EAAQC,EAAQ,CACnD,GAAIC,EAAYD,CAAM,GAAKE,EAAYF,CAAM,EAAG,CAC9CG,EAAWH,EAAQI,EAAKJ,CAAM,EAAGD,CAAM,EACvC,MACF,CACA,QAASM,KAAOL,EACVJ,EAAe,KAAKI,EAAQK,CAAG,GACjCC,EAAYP,EAAQM,EAAKL,EAAOK,CAAG,CAAC,CAG1C,CAAC,EAEME,EAAQV",
  "names": ["import_react", "isClient", "useBrowserLayoutEffect", "noop", "isBrowser", "ensureSingleScript", "scriptId", "source", "onLoaded", "attributes", "scriptElement", "markLoadedAndCallback", "newScriptElement", "key", "import_react", "lazyComponent", "factory", "componentModule", "objectProto", "hasOwnProperty", "assign", "createAssigner_default", "object", "source", "isPrototype_default", "isArrayLike_default", "copyObject_default", "keys_default", "key", "assignValue_default", "assign_default"]
}
