@elliemae/pui-logrocket 1.2.3-alpha.1 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/build/docs/404.html +2 -2
  2. package/build/docs/api/functions/buildLogRocketQueryParams/index.html +2 -2
  3. package/build/docs/api/functions/hasUserConsentedToSessionRecording/index.html +2 -2
  4. package/build/docs/api/functions/initLogRocket/index.html +2 -2
  5. package/build/docs/api/index.html +2 -2
  6. package/build/docs/api/type-aliases/LROptions/index.html +2 -2
  7. package/build/docs/assets/js/04ee7372.91effd96.js +1 -0
  8. package/build/docs/assets/js/{7392.9b9efade.js → 6143.8bf840e9.js} +1 -1
  9. package/build/docs/assets/js/{7666.20fc9126.js → 7666.99e92eb2.js} +2 -2
  10. package/build/docs/assets/js/e376fc56.609d201b.js +1 -0
  11. package/build/docs/assets/js/main.7d3be447.js +2 -0
  12. package/build/docs/assets/js/{runtime~main.92c4c877.js → runtime~main.5e481bc4.js} +1 -1
  13. package/build/docs/compliance/index.html +2 -2
  14. package/build/docs/index.html +2 -2
  15. package/build/docs/usage-guide/index.html +26 -5
  16. package/dist/cjs/logrocket.js +36 -25
  17. package/dist/esm/logrocket.js +36 -25
  18. package/dist/public/index.html +1 -1
  19. package/dist/public/js/emuiLogrocket.32efbf89608d7f1ff787.js +45 -0
  20. package/dist/public/js/emuiLogrocket.32efbf89608d7f1ff787.js.br +0 -0
  21. package/dist/public/js/emuiLogrocket.32efbf89608d7f1ff787.js.gz +0 -0
  22. package/dist/public/js/emuiLogrocket.32efbf89608d7f1ff787.js.map +1 -0
  23. package/dist/types/tsconfig.tsbuildinfo +1 -1
  24. package/dist/umd/index.js +16 -16
  25. package/dist/umd/index.js.br +0 -0
  26. package/dist/umd/index.js.gz +0 -0
  27. package/dist/umd/index.js.map +1 -1
  28. package/package.json +2 -2
  29. package/build/docs/assets/js/04ee7372.7628802a.js +0 -1
  30. package/build/docs/assets/js/e376fc56.4c90b364.js +0 -1
  31. package/build/docs/assets/js/main.01bafb97.js +0 -2
  32. package/dist/public/js/emuiLogrocket.ce70c014720a1d694f3a.js +0 -45
  33. package/dist/public/js/emuiLogrocket.ce70c014720a1d694f3a.js.br +0 -0
  34. package/dist/public/js/emuiLogrocket.ce70c014720a1d694f3a.js.gz +0 -0
  35. package/dist/public/js/emuiLogrocket.ce70c014720a1d694f3a.js.map +0 -1
  36. /package/build/docs/assets/js/{7666.20fc9126.js.LICENSE.txt → 7666.99e92eb2.js.LICENSE.txt} +0 -0
  37. /package/build/docs/assets/js/{main.01bafb97.js.LICENSE.txt → main.7d3be447.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- (()=>{"use strict";var e,a,r,t,o,c={},f={};function n(e){var a=f[e];if(void 0!==a)return a.exports;var r=f[e]={id:e,loaded:!1,exports:{}};return c[e].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}n.m=c,n.c=f,e=[],n.O=(a,r,t,o)=>{if(!r){var c=1/0;for(i=0;i<e.length;i++){for(var[r,t,o]=e[i],f=!0,d=0;d<r.length;d++)(!1&o||c>=o)&&Object.keys(n.O).every(e=>n.O[e](r[d]))?r.splice(d--,1):(f=!1,o<c&&(c=o));if(f){e.splice(i--,1);var b=t();void 0!==b&&(a=b)}}return a}o=o||0;for(var i=e.length;i>0&&e[i-1][2]>o;i--)e[i]=e[i-1];e[i]=[r,t,o]},n.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return n.d(a,{a:a}),a},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,n.t=function(e,t){if(1&t&&(e=this(e)),8&t)return e;if("object"==typeof e&&e){if(4&t&&e.__esModule)return e;if(16&t&&"function"==typeof e.then)return e}var o=Object.create(null);n.r(o);var c={};a=a||[null,r({}),r([]),r(r)];for(var f=2&t&&e;("object"==typeof f||"function"==typeof f)&&!~a.indexOf(f);f=r(f))Object.getOwnPropertyNames(f).forEach(a=>c[a]=()=>e[a]);return c.default=()=>e,n.d(o,c),o},n.d=(e,a)=>{for(var r in a)n.o(a,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce((a,r)=>(n.f[r](e,a),a),[])),n.u=e=>"assets/js/"+({295:"51c4ceb1",594:"5e8c322a",2076:"common",3361:"c377a04b",3480:"e376fc56",4319:"211c08f1",4804:"7fcbe1af",5742:"aba21aa0",5754:"acaa8c75",5760:"552a934f",5908:"04ee7372",7098:"a7bd4aaa",8401:"17896441",9048:"a94703ab",9647:"5e95c892"}[e]||e)+"."+{200:"0310889b",295:"6fc4ec7b",483:"18c7d7f8",594:"503d46ea",638:"a021b03c",654:"0e97a121",764:"32783b8e",967:"d428fcf6",1138:"aa8c4e98",1370:"c8be4ee0",2076:"6c804366",2180:"31d6ce39",2327:"251d6533",2706:"74774645",3308:"78e397d4",3361:"2361a76f",3480:"4c90b364",3725:"36fa16ca",3767:"2998632d",3899:"94243d47",4167:"eb3f034b",4319:"f5d0523b",4359:"6536c7a0",4390:"744aab40",4413:"e614d609",4453:"ef8b090c",4632:"aa312ff7",4804:"5999b9e8",4860:"cfa79720",5168:"97fb36dd",5179:"ccfc9ebc",5182:"30f41439",5275:"4ed9ae52",5742:"a5d4e000",5754:"70525e75",5760:"b125f196",5820:"2cd5bf53",5908:"7628802a",6340:"eaf6d37a",6376:"13262bdb",6603:"cbc20a0f",6761:"0b26728e",6873:"83ee6c7c",7039:"3ca79f91",7098:"ad524078",7204:"1ce9a9b1",7392:"9b9efade",7616:"6501b368",7666:"20fc9126",7876:"3ac89535",8071:"6922ccd8",8401:"dfa22f5b",8907:"4424af8f",9048:"5c63b074",9647:"2d99be36",9748:"cc3f89d3",9845:"d704e0f2"}[e]+".js",n.miniCssF=e=>{},n.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),t={},o="@elliemae/pui-logrocket:",n.l=(e,a,r,c)=>{if(t[e])t[e].push(a);else{var f,d;if(void 0!==r)for(var b=document.getElementsByTagName("script"),i=0;i<b.length;i++){var l=b[i];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+r){f=l;break}}f||(d=!0,(f=document.createElement("script")).charset="utf-8",n.nc&&f.setAttribute("nonce",n.nc),f.setAttribute("data-webpack",o+r),f.src=e),t[e]=[a];var u=(a,r)=>{f.onerror=f.onload=null,clearTimeout(s);var o=t[e];if(delete t[e],f.parentNode&&f.parentNode.removeChild(f),o&&o.forEach(e=>e(r)),a)return a(r)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=u.bind(null,f.onerror),f.onload=u.bind(null,f.onload),d&&document.head.appendChild(f)}},n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.p="/logrocket/",n.gca=function(e){return e={17896441:"8401","51c4ceb1":"295","5e8c322a":"594",common:"2076",c377a04b:"3361",e376fc56:"3480","211c08f1":"4319","7fcbe1af":"4804",aba21aa0:"5742",acaa8c75:"5754","552a934f":"5760","04ee7372":"5908",a7bd4aaa:"7098",a94703ab:"9048","5e95c892":"9647"}[e]||e,n.p+n.u(e)},(()=>{var e={5354:0,1869:0};n.f.j=(a,r)=>{var t=n.o(e,a)?e[a]:void 0;if(0!==t)if(t)r.push(t[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var o=new Promise((r,o)=>t=e[a]=[r,o]);r.push(t[2]=o);var c=n.p+n.u(a),f=new Error;n.l(c,r=>{if(n.o(e,a)&&(0!==(t=e[a])&&(e[a]=void 0),t)){var o=r&&("load"===r.type?"missing":r.type),c=r&&r.target&&r.target.src;f.message="Loading chunk "+a+" failed.\n("+o+": "+c+")",f.name="ChunkLoadError",f.type=o,f.request=c,t[1](f)}},"chunk-"+a,a)}},n.O.j=a=>0===e[a];var a=(a,r)=>{var t,o,[c,f,d]=r,b=0;if(c.some(a=>0!==e[a])){for(t in f)n.o(f,t)&&(n.m[t]=f[t]);if(d)var i=d(n)}for(a&&a(r);b<c.length;b++)o=c[b],n.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return n.O(i)},r=globalThis.webpackChunk_elliemae_pui_logrocket=globalThis.webpackChunk_elliemae_pui_logrocket||[];r.forEach(a.bind(null,0)),r.push=a.bind(null,r.push.bind(r))})()})();
1
+ (()=>{"use strict";var e,a,r,t,o,c={},f={};function n(e){var a=f[e];if(void 0!==a)return a.exports;var r=f[e]={id:e,loaded:!1,exports:{}};return c[e].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}n.m=c,n.c=f,e=[],n.O=(a,r,t,o)=>{if(!r){var c=1/0;for(i=0;i<e.length;i++){for(var[r,t,o]=e[i],f=!0,d=0;d<r.length;d++)(!1&o||c>=o)&&Object.keys(n.O).every(e=>n.O[e](r[d]))?r.splice(d--,1):(f=!1,o<c&&(c=o));if(f){e.splice(i--,1);var b=t();void 0!==b&&(a=b)}}return a}o=o||0;for(var i=e.length;i>0&&e[i-1][2]>o;i--)e[i]=e[i-1];e[i]=[r,t,o]},n.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return n.d(a,{a:a}),a},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,n.t=function(e,t){if(1&t&&(e=this(e)),8&t)return e;if("object"==typeof e&&e){if(4&t&&e.__esModule)return e;if(16&t&&"function"==typeof e.then)return e}var o=Object.create(null);n.r(o);var c={};a=a||[null,r({}),r([]),r(r)];for(var f=2&t&&e;("object"==typeof f||"function"==typeof f)&&!~a.indexOf(f);f=r(f))Object.getOwnPropertyNames(f).forEach(a=>c[a]=()=>e[a]);return c.default=()=>e,n.d(o,c),o},n.d=(e,a)=>{for(var r in a)n.o(a,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce((a,r)=>(n.f[r](e,a),a),[])),n.u=e=>"assets/js/"+({295:"51c4ceb1",594:"5e8c322a",2076:"common",3361:"c377a04b",3480:"e376fc56",4319:"211c08f1",4804:"7fcbe1af",5742:"aba21aa0",5754:"acaa8c75",5760:"552a934f",5908:"04ee7372",7098:"a7bd4aaa",8401:"17896441",9048:"a94703ab",9647:"5e95c892"}[e]||e)+"."+{200:"0310889b",295:"6fc4ec7b",483:"18c7d7f8",594:"503d46ea",638:"a021b03c",654:"0e97a121",764:"32783b8e",967:"d428fcf6",1138:"aa8c4e98",1370:"c8be4ee0",2076:"6c804366",2180:"31d6ce39",2327:"251d6533",2706:"74774645",3308:"78e397d4",3361:"2361a76f",3480:"609d201b",3725:"36fa16ca",3767:"2998632d",3899:"94243d47",4167:"eb3f034b",4319:"f5d0523b",4359:"6536c7a0",4390:"744aab40",4413:"e614d609",4453:"ef8b090c",4632:"aa312ff7",4804:"5999b9e8",4860:"cfa79720",5168:"97fb36dd",5179:"ccfc9ebc",5182:"30f41439",5275:"4ed9ae52",5742:"a5d4e000",5754:"70525e75",5760:"b125f196",5820:"2cd5bf53",5908:"91effd96",6143:"8bf840e9",6340:"eaf6d37a",6376:"13262bdb",6603:"cbc20a0f",6761:"0b26728e",6873:"83ee6c7c",7039:"3ca79f91",7098:"ad524078",7204:"1ce9a9b1",7616:"6501b368",7666:"99e92eb2",7876:"3ac89535",8071:"6922ccd8",8401:"dfa22f5b",8907:"4424af8f",9048:"5c63b074",9647:"2d99be36",9748:"cc3f89d3",9845:"d704e0f2"}[e]+".js",n.miniCssF=e=>{},n.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),t={},o="@elliemae/pui-logrocket:",n.l=(e,a,r,c)=>{if(t[e])t[e].push(a);else{var f,d;if(void 0!==r)for(var b=document.getElementsByTagName("script"),i=0;i<b.length;i++){var l=b[i];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+r){f=l;break}}f||(d=!0,(f=document.createElement("script")).charset="utf-8",n.nc&&f.setAttribute("nonce",n.nc),f.setAttribute("data-webpack",o+r),f.src=e),t[e]=[a];var u=(a,r)=>{f.onerror=f.onload=null,clearTimeout(s);var o=t[e];if(delete t[e],f.parentNode&&f.parentNode.removeChild(f),o&&o.forEach(e=>e(r)),a)return a(r)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=u.bind(null,f.onerror),f.onload=u.bind(null,f.onload),d&&document.head.appendChild(f)}},n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.p="/logrocket/",n.gca=function(e){return e={17896441:"8401","51c4ceb1":"295","5e8c322a":"594",common:"2076",c377a04b:"3361",e376fc56:"3480","211c08f1":"4319","7fcbe1af":"4804",aba21aa0:"5742",acaa8c75:"5754","552a934f":"5760","04ee7372":"5908",a7bd4aaa:"7098",a94703ab:"9048","5e95c892":"9647"}[e]||e,n.p+n.u(e)},(()=>{var e={5354:0,1869:0};n.f.j=(a,r)=>{var t=n.o(e,a)?e[a]:void 0;if(0!==t)if(t)r.push(t[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var o=new Promise((r,o)=>t=e[a]=[r,o]);r.push(t[2]=o);var c=n.p+n.u(a),f=new Error;n.l(c,r=>{if(n.o(e,a)&&(0!==(t=e[a])&&(e[a]=void 0),t)){var o=r&&("load"===r.type?"missing":r.type),c=r&&r.target&&r.target.src;f.message="Loading chunk "+a+" failed.\n("+o+": "+c+")",f.name="ChunkLoadError",f.type=o,f.request=c,t[1](f)}},"chunk-"+a,a)}},n.O.j=a=>0===e[a];var a=(a,r)=>{var t,o,[c,f,d]=r,b=0;if(c.some(a=>0!==e[a])){for(t in f)n.o(f,t)&&(n.m[t]=f[t]);if(d)var i=d(n)}for(a&&a(r);b<c.length;b++)o=c[b],n.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return n.O(i)},r=globalThis.webpackChunk_elliemae_pui_logrocket=globalThis.webpackChunk_elliemae_pui_logrocket||[];r.forEach(a.bind(null,0)),r.push=a.bind(null,r.push.bind(r))})()})();
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.9.2">
6
6
  <title data-rh="true">Compliance Requirements | LogRocket</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pui.ice.com/logrocket/compliance"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Compliance Requirements | LogRocket"><meta data-rh="true" name="description" content="Due to wiretapping &amp; privacy laws in certain jurisdictions, it is essential to ensure that our session recording practices comply with local regulations. Below are the key compliance requirements we need to adhere to when using LogRocket for recording user sessions and activities,"><meta data-rh="true" property="og:description" content="Due to wiretapping &amp; privacy laws in certain jurisdictions, it is essential to ensure that our session recording practices comply with local regulations. Below are the key compliance requirements we need to adhere to when using LogRocket for recording user sessions and activities,"><link data-rh="true" rel="icon" href="/logrocket/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pui.ice.com/logrocket/compliance"><link data-rh="true" rel="alternate" href="https://pui.ice.com/logrocket/compliance" hreflang="en"><link data-rh="true" rel="alternate" href="https://pui.ice.com/logrocket/compliance" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Compliance Requirements","item":"https://pui.ice.com/logrocket/compliance"}]}</script><link rel="stylesheet" href="/logrocket/assets/css/styles.48d5ef50.css">
7
- <script src="/logrocket/assets/js/runtime~main.92c4c877.js" defer="defer"></script>
8
- <script src="/logrocket/assets/js/main.01bafb97.js" defer="defer"></script>
7
+ <script src="/logrocket/assets/js/runtime~main.5e481bc4.js" defer="defer"></script>
8
+ <script src="/logrocket/assets/js/main.7d3be447.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <svg style="display: none;"><defs>
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.9.2">
6
6
  <title data-rh="true">Getting Started | LogRocket</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pui.ice.com/logrocket/"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Getting Started | LogRocket"><meta data-rh="true" name="description" content="UI Platform LogRocket library standardizes the way we integrate LogRocket into our applications."><meta data-rh="true" property="og:description" content="UI Platform LogRocket library standardizes the way we integrate LogRocket into our applications."><link data-rh="true" rel="icon" href="/logrocket/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pui.ice.com/logrocket/"><link data-rh="true" rel="alternate" href="https://pui.ice.com/logrocket/" hreflang="en"><link data-rh="true" rel="alternate" href="https://pui.ice.com/logrocket/" hreflang="x-default"><script data-rh="true">function insertBanner(){var n=document.createElement("div");n.id="__docusaurus-base-url-issue-banner-container";n.innerHTML='\n<div id="__docusaurus-base-url-issue-banner" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseUrl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">/logrocket/</span> </p>\n <p>We suggest trying baseUrl = <span id="__docusaurus-base-url-issue-banner-suggestion-container" style="font-weight: bold; color: green;"></span></p>\n</div>\n',document.body.prepend(n);var e=document.getElementById("__docusaurus-base-url-issue-banner-suggestion-container"),o=window.location.pathname,s="/"===o.substr(-1)?o:o+"/";e.innerHTML=s}document.addEventListener("DOMContentLoaded",function(){void 0===window.docusaurus&&insertBanner()})</script><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Getting Started","item":"https://pui.ice.com/logrocket/"}]}</script><link rel="stylesheet" href="/logrocket/assets/css/styles.48d5ef50.css">
7
- <script src="/logrocket/assets/js/runtime~main.92c4c877.js" defer="defer"></script>
8
- <script src="/logrocket/assets/js/main.01bafb97.js" defer="defer"></script>
7
+ <script src="/logrocket/assets/js/runtime~main.5e481bc4.js" defer="defer"></script>
8
+ <script src="/logrocket/assets/js/main.7d3be447.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <svg style="display: none;"><defs>
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.9.2">
6
6
  <title data-rh="true">Usage Guide | LogRocket</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pui.ice.com/logrocket/usage-guide"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Usage Guide | LogRocket"><meta data-rh="true" name="description" content="UI Platform LogRocket library standardizes the way we integrate LogRocket into our applications."><meta data-rh="true" property="og:description" content="UI Platform LogRocket library standardizes the way we integrate LogRocket into our applications."><link data-rh="true" rel="icon" href="/logrocket/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pui.ice.com/logrocket/usage-guide"><link data-rh="true" rel="alternate" href="https://pui.ice.com/logrocket/usage-guide" hreflang="en"><link data-rh="true" rel="alternate" href="https://pui.ice.com/logrocket/usage-guide" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Usage Guide","item":"https://pui.ice.com/logrocket/usage-guide"}]}</script><link rel="stylesheet" href="/logrocket/assets/css/styles.48d5ef50.css">
7
- <script src="/logrocket/assets/js/runtime~main.92c4c877.js" defer="defer"></script>
8
- <script src="/logrocket/assets/js/main.01bafb97.js" defer="defer"></script>
7
+ <script src="/logrocket/assets/js/runtime~main.5e481bc4.js" defer="defer"></script>
8
+ <script src="/logrocket/assets/js/main.7d3be447.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <svg style="display: none;"><defs>
@@ -32,9 +32,30 @@
32
32
  <li class=""><code>appId</code> (string): LogRocket application ID allocated to the product.</li>
33
33
  <li class=""><code>enable</code> (boolean): Flag to enable or disable LogRocket in the microapp. Defaults to <code>true</code>. If set to <code>false</code>, LogRocket will not be initialized even if <code>initLogRocket</code> is called. This can be useful for disabling LogRocket in certain environments (e.g., development or staging).</li>
34
34
  <li class=""><code>localhostEnable</code> (boolean): Flag to enable LogRocket when running on localhost. Defaults to <code>false</code>. When set to <code>true</code>, LogRocket will be enabled on localhost even if the <code>LOGROCKET_ENABLE_ON_LOCALHOST</code> environment variable is not set. This is useful for local development and testing.</li>
35
- <li class=""><code>childDomains</code> (array of strings, optional): List of cross-origin child micro application origins (e.g., iframes) the parent should link sessions with. The library <strong>always sends <code>childDomains</code> to LogRocket</strong> with at minimum the current window&#x27;s <code>origin</code>, so the SDK is always in cross-origin frame-stitching mode and same-origin children link automatically. You only need to supply the <strong>additional cross-origin entries</strong> — <code>[]</code>, <code>null</code>, or omitting the option produces the same effective configuration: <code>[&lt;current origin&gt;]</code>. Each entry must be a full origin including protocol (e.g. <code>https://child.example.com</code>); bare hostnames or non-array values are rejected with a console warning because LogRocket matches each candidate frame&#x27;s <code>window.location.origin</code> against this list.</li>
36
- <li class=""><code>parentDomain</code> (string, optional): Parent domain of the hosting application. The library <strong>always auto-detects</strong> this from (1) the <code>lrParentOrigin</code> query parameter set by the parent via <code>buildLogRocketQueryParams</code>, (2) <code>window.parent.location.origin</code> (same-origin parent), or (3) <code>document.referrer</code> (best-effort cross-origin fallback). Setting this option overrides the auto-detected value, but only when it is a valid full origin (e.g. <code>https://parent.example.com</code>); invalid overrides are ignored with a console warning so a misconfiguration cannot disable the auto-detected value.</li>
37
- <li class=""><code>rootHostname</code> (string): Cookie scope for stitching sessions across subdomains of the <strong>same site</strong> (see <a href="https://docs.logrocket.com/reference/roothostname" target="_blank" rel="noopener noreferrer" class="">LogRocket docs</a>). Auto-detected from the current window&#x27;s hostname (last two segments, e.g. <code>beta.encompass.elliemae.io</code> → <code>.elliemae.io</code>), so same-site iframes converge on the same value automatically. Set this option to override — accepted only when it ends with the auto-detected value (e.g. narrow <code>.elliemae.io</code> to <code>.shared.elliemae.io</code>, or work around multi-segment public suffixes like <code>.co.uk</code> by passing <code>.example.co.uk</code>). Cross-<strong>site</strong> frame linking uses <code>parentDomain</code>/<code>childDomains</code>, not this option.</li>
35
+ <li class=""><code>childDomains</code> (array of strings, optional): Cross-origin child app origins to link sessions with when the page embeds them as iframes.<!-- -->
36
+ <ul>
37
+ <li class=""><strong>Default:</strong> the library always includes the current origin, so same-origin children stitch automatically with no configuration.</li>
38
+ <li class=""><strong>Set this when:</strong> the page is a parent that embeds <strong>cross-origin</strong> guest microapps (e.g. <code>https://app.ice.com</code> embedding <code>https://guest.example.com</code>). List each cross-origin child origin.</li>
39
+ <li class=""><strong>Format:</strong> array of full origins including protocol (e.g. <code>[&#x27;https://guest.example.com&#x27;]</code>). Bare hostnames, URLs with paths, and non-array values are dropped with a warning.</li>
40
+ <li class=""><strong>Note:</strong> the caller&#x27;s array is merged with the current origin (it cannot be removed). Children themselves don&#x27;t set this option — they need <code>parentDomain</code> (normally auto-detected). Both sides must be configured for cross-origin linking to work.</li>
41
+ </ul>
42
+ </li>
43
+ <li class=""><code>parentDomain</code> (string, optional): Origin of the page that embeds this one. Used by LogRocket for <code>postMessage</code>-based session linking between cross-origin frames.<!-- -->
44
+ <ul>
45
+ <li class=""><strong>Default:</strong> auto-detected from (1) the <code>lrParentOrigin</code> query parameter set by the parent via <code>buildLogRocketQueryParams</code>, (2) <code>window.parent.location.origin</code> for same-origin parents, or (3) <code>document.referrer</code>. This covers most embed scenarios when the parent uses <code>buildLogRocketQueryParams</code>.</li>
46
+ <li class=""><strong>Set this when:</strong> the parent is cross-origin, does <strong>not</strong> call <code>buildLogRocketQueryParams</code>, and your <code>Referrer-Policy</code> strips <code>document.referrer</code>. In that case auto-detection returns <code>null</code> and you must supply the parent origin yourself.</li>
47
+ <li class=""><strong>Format:</strong> a full origin (e.g. <code>https://parent.example.com</code>). Bare hostnames or URLs with paths are dropped with a warning.</li>
48
+ <li class=""><strong>Note:</strong> do not set this on a top-level page (no real parent). The validator only checks origin shape; on a top-level page a valid override tells LogRocket to wait on a parent that doesn&#x27;t exist and stalls session start.</li>
49
+ </ul>
50
+ </li>
51
+ <li class=""><code>rootHostname</code> (string, optional): Cookie scope for stitching sessions across subdomains of the <strong>same site</strong> (see <a href="https://docs.logrocket.com/reference/roothostname" target="_blank" rel="noopener noreferrer" class="">LogRocket docs</a>).<!-- -->
52
+ <ul>
53
+ <li class=""><strong>Default:</strong> auto-detected as <code>.&lt;last two hostname segments&gt;</code> (e.g. <code>beta.encompass.ice.com</code> → <code>.ice.com</code>). Same-site iframes converge on the same value automatically.</li>
54
+ <li class=""><strong>Set this when:</strong> you want to <strong>narrow</strong> the cookie scope to a deeper subtree so sessions in that subtree don&#x27;t merge with the rest of the site (e.g. set <code>.beta.ice.com</code> on <code>app.beta.ice.com</code> to keep beta sessions isolated from prod).</li>
55
+ <li class=""><strong>Format:</strong> must start with <code>.</code> and end with the auto-detected value. A different site, a shallower scope, or a missing leading dot is rejected with a warning.</li>
56
+ <li class=""><strong>Note:</strong> cross-<strong>site</strong> frame linking is handled by <code>parentDomain</code>/<code>childDomains</code>, not this option.</li>
57
+ </ul>
58
+ </li>
38
59
  </ul>
39
60
  <h2 class="anchor anchorTargetStickyNavbar_UXZL" id="proxying-logrocket-calls-through-cdn-domain">Proxying LogRocket Calls Through CDN Domain<a href="#proxying-logrocket-calls-through-cdn-domain" class="hash-link" aria-label="Direct link to Proxying LogRocket Calls Through CDN Domain" title="Direct link to Proxying LogRocket Calls Through CDN Domain" translate="no">​</a></h2>
40
61
  <p>By default, all LogRocket network traffic (script loading and data ingestion) is proxied through the UI Platform CDN domain (<code>cdn.mortgagetech.*.ice.com</code>) instead of LogRocket&#x27;s own servers. This improves ad-blocker resilience since requests to first-party domains are less likely to be blocked, and ensures compliance with network policies in environments that restrict traffic to known internal domains.</p>
@@ -114,9 +114,8 @@ const getParentDomain = () => {
114
114
  }
115
115
  return parentDomain;
116
116
  };
117
- const buildChildDomains = () => {
117
+ const buildChildDomains = (override) => {
118
118
  const currentOrigin = window.location.origin;
119
- const override = window.emui?.logRocketConfig?.childDomains;
120
119
  if (override === void 0 || override === null) {
121
120
  return [currentOrigin];
122
121
  }
@@ -128,7 +127,11 @@ const buildChildDomains = () => {
128
127
  }
129
128
  const { valid, invalid } = override.reduce(
130
129
  (acc, entry) => {
131
- (isValidOrigin(entry) ? acc.valid : acc.invalid).push(entry);
130
+ if (typeof entry === "string" && isValidOrigin(entry)) {
131
+ acc.valid.push(entry);
132
+ } else {
133
+ acc.invalid.push(String(entry));
134
+ }
132
135
  return acc;
133
136
  },
134
137
  { valid: [], invalid: [] }
@@ -142,8 +145,7 @@ const buildChildDomains = () => {
142
145
  if (valid.includes(currentOrigin)) return valid;
143
146
  return [...valid, currentOrigin];
144
147
  };
145
- const buildParentDomain = () => {
146
- const override = window.emui?.logRocketConfig?.parentDomain;
148
+ const buildParentDomain = (override) => {
147
149
  if (override !== void 0 && override !== null) {
148
150
  if (typeof override === "string" && isValidOrigin(override)) {
149
151
  return override;
@@ -156,24 +158,25 @@ const buildParentDomain = () => {
156
158
  return getParentDomain();
157
159
  };
158
160
  const ROOT_HOSTNAME_RE = /[^.]+\.[^.]+$/;
159
- const getRootHostname = () => {
161
+ const getRootHostname = (override) => {
160
162
  const match = ROOT_HOSTNAME_RE.exec(window.location.hostname);
161
163
  const auto = match ? `.${match[0]}` : void 0;
162
- const override = window.emui?.logRocketConfig?.rootHostname;
163
- if (override && auto && override.startsWith(".") && override.endsWith(auto)) {
164
+ if (typeof override === "string" && auto && override.startsWith(".") && override.endsWith(auto)) {
164
165
  return override;
165
166
  }
166
- if (override) {
167
+ if (override !== void 0 && override !== null) {
167
168
  const autoLabel = auto ?? "(none)";
168
169
  getLogger().warn(
169
- `LogRocket rootHostname override "${override}" ignored: must start with "." and end with the auto-detected "${autoLabel}". Using auto-detected value.`
170
+ `LogRocket rootHostname override "${String(
171
+ override
172
+ )}" ignored: must start with "." and end with the auto-detected "${autoLabel}". Using auto-detected value.`
170
173
  );
171
174
  }
172
175
  return auto;
173
176
  };
174
- const getDefaultOptions = () => {
175
- const childDomains = buildChildDomains();
176
- const parentDomain = buildParentDomain();
177
+ const getDefaultOptions = (overrides) => {
178
+ const childDomains = buildChildDomains(overrides.childDomains);
179
+ const parentDomain = buildParentDomain(overrides.parentDomain);
177
180
  return {
178
181
  browser: {
179
182
  urlSanitizer: (url) => {
@@ -224,7 +227,7 @@ const getDefaultOptions = () => {
224
227
  },
225
228
  release: process?.env?.APP_VERSION,
226
229
  // app sdk based applications use this env variable to specify the app code version
227
- rootHostname: getRootHostname(),
230
+ rootHostname: getRootHostname(overrides.rootHostname),
228
231
  childDomains,
229
232
  ...parentDomain ? { parentDomain } : {}
230
233
  };
@@ -247,15 +250,6 @@ const isLogRocketDisabled = () => {
247
250
  if (window.emui?.logRocketConfig?.enable === false || urlParams.get("lrEnabled") === "false") {
248
251
  return true;
249
252
  }
250
- if (window.frameElement) {
251
- try {
252
- const frameUrl = new URL(window.frameElement.src);
253
- if (frameUrl.searchParams.get("lrEnabled") === "false") {
254
- return true;
255
- }
256
- } catch {
257
- }
258
- }
259
253
  return false;
260
254
  };
261
255
  const hasUserConsentedToSessionRecording = () => {
@@ -307,8 +301,23 @@ const logInitOutcome = (sessionRecordingEnabled) => {
307
301
  getLogger().info(`LogRocket session URL: ${sessionURL}`);
308
302
  });
309
303
  };
304
+ const resolveAutoDetectedOverrides = (fromOptions) => {
305
+ const windowConfig = window.emui?.logRocketConfig;
306
+ return {
307
+ rootHostname: fromOptions.rootHostname ?? windowConfig?.rootHostname,
308
+ childDomains: fromOptions.childDomains ?? windowConfig?.childDomains,
309
+ parentDomain: fromOptions.parentDomain ?? windowConfig?.parentDomain
310
+ };
311
+ };
310
312
  const init = (options) => {
311
- const { appId, isReact = true, ...rest } = options ?? {};
313
+ const {
314
+ appId,
315
+ isReact = true,
316
+ rootHostname,
317
+ childDomains,
318
+ parentDomain,
319
+ ...rest
320
+ } = options ?? {};
312
321
  lrAppId = getLRAppId(appId);
313
322
  if (!lrAppId) {
314
323
  throw new Error(
@@ -322,7 +331,9 @@ const init = (options) => {
322
331
  return;
323
332
  }
324
333
  window.emui.lrEnabled = true;
325
- const defaultOptions = getDefaultOptions();
334
+ const defaultOptions = getDefaultOptions(
335
+ resolveAutoDetectedOverrides({ rootHostname, childDomains, parentDomain })
336
+ );
326
337
  const consent = hasUserConsentedToSessionRecording();
327
338
  window.emui.lrSessionRecordingConsent = consent;
328
339
  if (defaultOptions.dom) {
@@ -78,9 +78,8 @@ const getParentDomain = () => {
78
78
  }
79
79
  return parentDomain;
80
80
  };
81
- const buildChildDomains = () => {
81
+ const buildChildDomains = (override) => {
82
82
  const currentOrigin = window.location.origin;
83
- const override = window.emui?.logRocketConfig?.childDomains;
84
83
  if (override === void 0 || override === null) {
85
84
  return [currentOrigin];
86
85
  }
@@ -92,7 +91,11 @@ const buildChildDomains = () => {
92
91
  }
93
92
  const { valid, invalid } = override.reduce(
94
93
  (acc, entry) => {
95
- (isValidOrigin(entry) ? acc.valid : acc.invalid).push(entry);
94
+ if (typeof entry === "string" && isValidOrigin(entry)) {
95
+ acc.valid.push(entry);
96
+ } else {
97
+ acc.invalid.push(String(entry));
98
+ }
96
99
  return acc;
97
100
  },
98
101
  { valid: [], invalid: [] }
@@ -106,8 +109,7 @@ const buildChildDomains = () => {
106
109
  if (valid.includes(currentOrigin)) return valid;
107
110
  return [...valid, currentOrigin];
108
111
  };
109
- const buildParentDomain = () => {
110
- const override = window.emui?.logRocketConfig?.parentDomain;
112
+ const buildParentDomain = (override) => {
111
113
  if (override !== void 0 && override !== null) {
112
114
  if (typeof override === "string" && isValidOrigin(override)) {
113
115
  return override;
@@ -120,24 +122,25 @@ const buildParentDomain = () => {
120
122
  return getParentDomain();
121
123
  };
122
124
  const ROOT_HOSTNAME_RE = /[^.]+\.[^.]+$/;
123
- const getRootHostname = () => {
125
+ const getRootHostname = (override) => {
124
126
  const match = ROOT_HOSTNAME_RE.exec(window.location.hostname);
125
127
  const auto = match ? `.${match[0]}` : void 0;
126
- const override = window.emui?.logRocketConfig?.rootHostname;
127
- if (override && auto && override.startsWith(".") && override.endsWith(auto)) {
128
+ if (typeof override === "string" && auto && override.startsWith(".") && override.endsWith(auto)) {
128
129
  return override;
129
130
  }
130
- if (override) {
131
+ if (override !== void 0 && override !== null) {
131
132
  const autoLabel = auto ?? "(none)";
132
133
  getLogger().warn(
133
- `LogRocket rootHostname override "${override}" ignored: must start with "." and end with the auto-detected "${autoLabel}". Using auto-detected value.`
134
+ `LogRocket rootHostname override "${String(
135
+ override
136
+ )}" ignored: must start with "." and end with the auto-detected "${autoLabel}". Using auto-detected value.`
134
137
  );
135
138
  }
136
139
  return auto;
137
140
  };
138
- const getDefaultOptions = () => {
139
- const childDomains = buildChildDomains();
140
- const parentDomain = buildParentDomain();
141
+ const getDefaultOptions = (overrides) => {
142
+ const childDomains = buildChildDomains(overrides.childDomains);
143
+ const parentDomain = buildParentDomain(overrides.parentDomain);
141
144
  return {
142
145
  browser: {
143
146
  urlSanitizer: (url) => {
@@ -188,7 +191,7 @@ const getDefaultOptions = () => {
188
191
  },
189
192
  release: process?.env?.APP_VERSION,
190
193
  // app sdk based applications use this env variable to specify the app code version
191
- rootHostname: getRootHostname(),
194
+ rootHostname: getRootHostname(overrides.rootHostname),
192
195
  childDomains,
193
196
  ...parentDomain ? { parentDomain } : {}
194
197
  };
@@ -211,15 +214,6 @@ const isLogRocketDisabled = () => {
211
214
  if (window.emui?.logRocketConfig?.enable === false || urlParams.get("lrEnabled") === "false") {
212
215
  return true;
213
216
  }
214
- if (window.frameElement) {
215
- try {
216
- const frameUrl = new URL(window.frameElement.src);
217
- if (frameUrl.searchParams.get("lrEnabled") === "false") {
218
- return true;
219
- }
220
- } catch {
221
- }
222
- }
223
217
  return false;
224
218
  };
225
219
  const hasUserConsentedToSessionRecording = () => {
@@ -271,8 +265,23 @@ const logInitOutcome = (sessionRecordingEnabled) => {
271
265
  getLogger().info(`LogRocket session URL: ${sessionURL}`);
272
266
  });
273
267
  };
268
+ const resolveAutoDetectedOverrides = (fromOptions) => {
269
+ const windowConfig = window.emui?.logRocketConfig;
270
+ return {
271
+ rootHostname: fromOptions.rootHostname ?? windowConfig?.rootHostname,
272
+ childDomains: fromOptions.childDomains ?? windowConfig?.childDomains,
273
+ parentDomain: fromOptions.parentDomain ?? windowConfig?.parentDomain
274
+ };
275
+ };
274
276
  const init = (options) => {
275
- const { appId, isReact = true, ...rest } = options ?? {};
277
+ const {
278
+ appId,
279
+ isReact = true,
280
+ rootHostname,
281
+ childDomains,
282
+ parentDomain,
283
+ ...rest
284
+ } = options ?? {};
276
285
  lrAppId = getLRAppId(appId);
277
286
  if (!lrAppId) {
278
287
  throw new Error(
@@ -286,7 +295,9 @@ const init = (options) => {
286
295
  return;
287
296
  }
288
297
  window.emui.lrEnabled = true;
289
- const defaultOptions = getDefaultOptions();
298
+ const defaultOptions = getDefaultOptions(
299
+ resolveAutoDetectedOverrides({ rootHostname, childDomains, parentDomain })
300
+ );
290
301
  const consent = hasUserConsentedToSessionRecording();
291
302
  window.emui.lrSessionRecordingConsent = consent;
292
303
  if (defaultOptions.dom) {
@@ -1 +1 @@
1
- <!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>LogRocket Test</title><script defer="defer" src="js/emuiLogrocket.ce70c014720a1d694f3a.js"></script></head><body><h1>LogRocket Test</h1><button id="testButton">Click me</button></body></html>
1
+ <!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>LogRocket Test</title><script defer="defer" src="js/emuiLogrocket.32efbf89608d7f1ff787.js"></script></head><body><h1>LogRocket Test</h1><button id="testButton">Click me</button></body></html>