UNPKG

@flagship.io/js-sdk

Version:
3 lines (2 loc) 4.59 kB
import{F as e,Q as i,T as n,a,S as t,b as s,c as o,i as d,l as r,d as w,e as l,o as c,f as g,g as p,h as f,j as S,k as m,m as h,n as _}from"./nsX90zke.js";import{s as u,a as k,I as v,M as y}from"./DapSjH90.js";import"events";const O=e=>document.querySelector(`script[src*="${e}"]`);function A(e=!1){"TypeScript"===t.name&&window.location.reload();const i=new CustomEvent(v.FsTriggerRendering,{detail:{forcedReFetchFlags:e}});window.dispatchEvent(i)}function E({event:i,config:n,func:a,visitorVariationState:t}){if(n.isQAModeEnabled&&d())switch(i.data.name){case y.FsQaAssistantReady:!function(e){e.visitorVariations&&u(e),e.exposedVariations&&k(e)}(t);break;case y.MinimizeQaAssistantClose:case y.QaAssistantClose:!function({config:i,func:n,visitorVariationState:a}){i.isQAModeEnabled=!1,sessionStorage.removeItem(o),n&&window.removeEventListener("message",n),document.getElementById(e)?.remove(),a.forcedVariations={},A()}({config:n,func:a,visitorVariationState:t});break;case y.FsApplyForcedVariations:!function({value:e,visitorVariationState:i}){const n=sessionStorage.getItem(s);let a={};try{a=JSON.parse(n||"{}")}catch(e){console.error("Error parsing sessionForcedVariations",e)}a={...a,...e},sessionStorage.setItem(s,JSON.stringify(a)),i.forcedVariations=a,A()}({value:i.data.value,visitorVariationState:t});break;case y.FsResetForcedVariations:!function(e){sessionStorage.removeItem(s),e.forcedVariations={},A()}(t);break;case y.FsTriggerRender:A(!0)}}function b(t,d=null,c){window?.frames?.ABTastyQaAssistant||(r(t,"QA assistant","Loading QA Assistant"),function(t){if(O(n)||O(a))return;const s=document.createElement("script");s.src=t,s.id=e,t===i&&(s.crossOrigin="anonymous"),document.body.append(s)}(d||l));let g={};const p=sessionStorage.getItem(s);try{g=JSON.parse(p||"{}")}catch(e){console.error("Error parsing sessionForcedVariations",e)}c.forcedVariations=g,window.__flagshipSdkQaAssistantMessageHandler&&window.removeEventListener("message",window.__flagshipSdkQaAssistantMessageHandler);const f=e=>{w.includes(e?.origin)&&E({visitorVariationState:c,event:e,config:t,func:f})};window.__flagshipSdkQaAssistantMessageHandler=f,window.addEventListener("message",window.__flagshipSdkQaAssistantMessageHandler),t.isQAModeEnabled=!0,sessionStorage.setItem(o,"true")}function L(e,i){r(e,"QA assistant","Listening for keyboard events to launch QA Assistant"),window.__flagshipSdkOnKeyCombinationDown&&document.removeEventListener("keydown",window.__flagshipSdkOnKeyCombinationDown),window.__flagshipSdkOnKeyCombinationUp&&document.removeEventListener("keyup",window.__flagshipSdkOnKeyCombinationUp);const n={};window.__flagshipSdkOnKeyCombinationDown=a=>{n[a.key]=!0,sessionStorage.removeItem(s),(n.Control||n.Alt)&&n.q&&n.a&&b(e,null,i)},window.__flagshipSdkOnKeyCombinationUp=e=>{delete n[e.key]},document.addEventListener("keydown",window.__flagshipSdkOnKeyCombinationDown),document.addEventListener("keyup",window.__flagshipSdkOnKeyCombinationUp)}function Q(e,n){d()&&c((()=>{const a={[_]:l,[h]:l,[m]:g,[S]:g,[f]:i,[p]:i},t=new URLSearchParams(window.location.search),s=Object.keys(a).find((e=>"true"===t.get(e)))||"";window.__flagshipSdkOnPlatformChoiceLoaded&&window.removeEventListener("message",window.__flagshipSdkOnPlatformChoiceLoaded),window.__flagshipSdkOnPlatformChoiceLoaded=function i(a){w.includes(a.origin)&&a.data.name===y.QaAssistantPlatformChoiceLoaded&&(e.isQAModeEnabled||b(e,null,n),window.removeEventListener("message",i))},window.addEventListener("message",window.__flagshipSdkOnPlatformChoiceLoaded),function(e,i){function n(){e.isQAModeEnabled&&(i.navigationDetected=!0)}window.__flagshipSdkOriginalPushState&&(window.history.pushState=window.__flagshipSdkOriginalPushState),window.__flagshipSdkOriginalReplaceState&&(window.history.replaceState=window.__flagshipSdkOriginalReplaceState),window.__flagshipSdkPopStateHandler&&window.removeEventListener("popstate",window.__flagshipSdkPopStateHandler),window.__flagshipSdkOriginalPushState=window.history.pushState,window.__flagshipSdkOriginalReplaceState=window.history.replaceState,window.history.pushState=function(...e){window.__flagshipSdkOriginalPushState&&(window.__flagshipSdkOriginalPushState.apply(this,e),n())},window.history.replaceState=function(...e){window.__flagshipSdkOriginalReplaceState&&(window.__flagshipSdkOriginalReplaceState.apply(this,e),n())},window.__flagshipSdkPopStateHandler=()=>{n()},window.addEventListener("popstate",window.__flagshipSdkPopStateHandler)}(e,n),e.isQAModeEnabled||s?b(e,a[s],n):L(e,n)}))}export{Q as launchQaAssistant}; //# sourceMappingURL=DB4bC5Bl.js.map