PageSourceSearch

https://cdn.vodafone.co.uk/web-marketing/consumer-marketing/assets…/app-85dd04e1.fc9c8a89ac4f22af57f0.js

js vodafone.co.uk collected 2026-09-24 07:22:24 UTC 14,038 bytes, 1 lines download raw bytes

1"use strict";(self.__LOADABLE_LOADED_CHUNKS__=self.__LOADABLE_LOADED_CHUNKS__||[]).push([[1350],{15507:(e,i,n)=>{n.d(i,{A:()=>l});var t=n(26364),s=n(34922),r=n(59431);function a(e,i){var n={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&i.indexOf(t)<0&&(n[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var s=0;for(t=Object.getOwnPropertySymbols(e);s<t.length;s++)i.indexOf(t[s])<0&&Object.prototype.propertyIsEnumerable.call(e,t[s])&&(n[t[s]]=e[t[s]])}return n}const c="translate(384px, 0px)",o="translate(432px, 0px)";class d{constructor(e){var i,n;this.options=e,this.container=document.createElement("div"),this.container.classList.add(d.CONTAINER_CLASS),this.container.style.position="fixed",this.container.style.zIndex="999999",this.container.style.right="0px",this.container.style.bottom="128px",this.container.style.width="432px",this.container.style.height="192px",this.container.style.overflow="hidden",(null===(n=null===(i=e.ui)||void 0===i?void 0:i.opener)||void 0===n?void 0:n.hide)?this.container.style.transform=o:this.container.style.transform=c,this.container.style.transitionTimingFunction="cubic-bezier(0.4, 0, 0.2, 1)",this.container.style.transitionDuration="700ms",this.container.style.transitionProperty="transform",document.body.appendChild(this.container)}open(){this.container.style.transform="translate(0px, 0px)",this.container.style.height="100vh",this.container.style.bottom="0px"}close(){var e,i;(null===(i=null===(e=this.options.ui)||void 0===e?void 0:e.opener)||void 0===i?void 0:i.hide)?this.container.style.transform=o:this.container.style.transform=c,setTimeout(()=>{this.container.style.height="192px",this.container.style.bottom="128px"},700)}get element(){return this.container}static isContainerAttached(){return null!==document.querySelector(`.${d.CONTAINER_CLASS}`)}}var h;d.CONTAINER_CLASS="nt-preview-widget-container";class l extends r.vl{constructor(e){super(),this.options=e,this.name="ninetailed:preview"+Math.random(),this.isOpen=!1,this.experiences=[],this.audienceDefinitions=[],this.audienceOverwrites={},this.experienceVariantIndexOverwrites={},this.variableOverwrites={},this.profile=null,this.changes=[],this.container=null,this.bridge=null,this.isActiveInstance=!1,this.onChangeEmitter=new s.IW,this.clientId=null,this.environment=null,this.initialize=()=>{return e=this,s=function*(){var e,i;if("undefined"!=typeof window){if(d.isContainerAttached())return t.vF.warn("Preview plugin is already attached."),void(this.isActiveInstance=!1);const{PreviewBridge:s}=yield Promise.all([n.e(359),n.e(2374),n.e(449)]).then(n.bind(n,40359));this.isActiveInstance=!0,this.container=new d({ui:this.options.ui}),this.bridge=s({url:this.options.url,nonce:this.options.nonce}),this.bridge.render(this.container.element),window.ninetailed=Object.assign({},window.ninetailed,{plugins:Object.assign(Object.assign({},null===(e=window.ninetailed)||void 0===e?void 0:e.plugins),{preview:this.windowApi})}),this.bridge.updateProps({props:this.pluginApi}),(null===(i=this.changes)||void 0===i?void 0:i.length)||this.onChange()}},new((i=void 0)||(i=Promise))(function(n,t){function r(e){try{c(s.next(e))}catch(e){t(e)}}function a(e){try{c(s.throw(e))}catch(e){t(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof i?t:new i(function(e){e(t)})).then(r,a)}c((s=s.apply(e,[])).next())});var e,i,s},this.loaded=()=>!0,this[h]=({payload:e})=>{this.isActiveInstance&&(null==e?void 0:e.profile)&&this.onProfileChange(e.profile,e.changes||[])},this.getChangesModificationMiddleware=()=>{if(this.isActiveInstance&&(0!==Object.keys(this.variableOverwrites).length||0!==Object.keys(this.audienceOverwrites).length))return({changes:e})=>{if(!e||0===e.length)return{changes:e};const i=e.filter(e=>{var i,n;const t=null===(i=e.meta)||void 0===i?void 0:i.experienceId;if(!t)return!0;const s=this.experiences.find(e=>e.id===t);return!(null===(n=null==s?void 0:s.audience)||void 0===n?void 0:n.id)||!1!==this.audienceOverwrites[s.audience.id]});return{changes:this.getEffectiveChanges(i)}}},this.getExperienceSelectionMiddleware=({baseline:e,experiences:i}
1)=>{if(this.isActiveInstance)return()=>{const n=Object.keys(this.pluginApi.experienceVariantIndexes),s=i.find(e=>n.includes(e.id));if(!s)return{experience:null,variant:e,variantIndex:0};const r=s.components.filter(e=>e.type===t.jP.EntryReplacement&&"id"in e.baseline).find(i=>i.baseline.id===e.id),a=this.pluginApi.experienceVariantIndexes[s.id];if(!r)return{experience:s,variant:e,variantIndex:0};const c=[e,...r.variants];if(c.length<=a)return{experience:s,variant:e,variantIndex:0};const o=c[a];return o?{experience:s,variant:o,variantIndex:a}:{experience:s,variant:e,variantIndex:0}}},this.onChange=()=>{var e;t.vF.debug("Ninetailed Preview Plugin onChange pluginApi:",this.pluginApi),"undefined"!=typeof window&&(window.ninetailed=Object.assign({},window.ninetailed,{plugins:Object.assign(Object.assign({},null===(e=window.ninetailed)||void 0===e?void 0:e.plugins),{preview:this.windowApi})})),this.bridge.updateProps({props:this.pluginApi}),this.onChangeEmitter.invokeListeners()},this.onProfileChange=(e,i)=>{this.profile=e,t.vF.debug("Profile changed:",{profile:e,changes:i}),i&&this.onChangesChange(i),this.onChange()},this.onChangesChange=e=>{this.isActiveInstance&&(t.vF.debug("Received changes:",e),this.changes=e,this.onChange())},this.setCredentials=({clientId:e,environment:i})=>{this.clientId=e,this.environment=i},this.experiences=e.experiences||[],this.audienceDefinitions=e.audiences||[],this.onOpenExperienceEditor=e.onOpenExperienceEditor,this.onOpenAudienceEditor=e.onOpenAudienceEditor}open(){var e;this.isActiveInstance&&(null===(e=this.container)||void 0===e||e.open(),this.isOpen=!0,this.onChange())}close(){var e;this.isActiveInstance&&(null===(e=this.container)||void 0===e||e.close(),setTimeout(()=>{this.isOpen=!1,this.onChange()},700))}toggle(){this.isActiveInstance&&(this.isOpen?this.close():this.open())}activateAudience(e){this.isActiveInstance&&(this.isKnownAudience(e)?(this.audienceOverwrites=Object.assign(Object.assign({},this.audienceOverwrites),{[e]:!0}),this.experienceVariantIndexOverwrites=Object.assign(Object.assign({},this.experienceVariantIndexOverwrites),this.experiences.filter(i=>{var n;return(null===(n=i.audience)||void 0===n?void 0:n.id)===e}).map(e=>e.id).reduce((e,i)=>Object.assign(Object.assign({},e),{[i]:this.experienceVariantIndexes[i]||0}),{})),this.experiences.filter(i=>{var n;return(null===(n=i.audience)||void 0===n?void 0:n.id)===e}).forEach(e=>{const i=this.experienceVariantIndexOverwrites[e.id]||0;this.applyInlineVariableOverridesForExperience(e,i)}),this.onChange()):t.vF.warn(`You cannot activate an unknown audience (id: ${e}).`))}deactivateAudience(e){this.isActiveInstance&&(this.isKnownAudience(e)?(this.audienceOverwrites=Object.assign(Object.assign({},this.audienceOverwrites),{[e]:!1}),this.onChange()):t.vF.warn(`You cannot deactivate an unknown audience (id: ${e}). How did you get it in the first place?`))}resetAudience(e){if(!this.isActiveInstance)return;if(!this.isKnownAudience(e))return void t.vF.warn(`You cannot reset an unknown audience (id: ${e}). How did you get it in the first place?`);const i=this.experiences.filter(i=>{var n;return(null===(n=i.audience)||void 0===n?void 0:n.id)===e});if(i.length>0){const e=i.map(e=>e.id);this.variableOverwrites=Object.fromEntries(Object.entries(this.variableOverwrites).filter(([,i])=>{var n;return!((null===(n=i.meta)||void 0===n?void 0:n.experienceId)&&e.includes(i.meta.experienceId))})),this.experienceVariantIndexOverwrites=Object.fromEntries(Object.entries(this.experienceVariantIndexOverwrites).filter(([i])=>!e.includes(i)))}const n=this.audienceOverwrites,s=e;n[s];const r=a(n,["symbol"==typeof s?s:s+""]);this.audienceOverwrites=r,this.onChange()}setExperienceVariant({experienceId:e,variantIndex:i}){if(!this.isActiveInstance)return;const n=this.experiences.find(i=>i.id===e);n?!n.audience||this.activeAudiences.some(e=>{var i;return e===(null===(i=n.audience)||void 0===i?void 0:i.id)})?(n.components.map(e=>e.variants.length+1).every(e=>e>i)||t.vF.warn(`You activated a variant at index ${i} for the experience (id: ${e}). Not all components have that many variants, you may see the baseline for some.`),this.experienceVariantIndexOverwrites=Object.assign(Object.assign({},this.experienceVariantIndexOverwrites),{[e]:i}),this.applyInlineVariableOverridesForExperience(n,i),this.onChange()):t.vF.warn(`Cannot activate a variant for an experience (id: ${e}) which is not in the active audiences.`):t.vF.warn(`Cannot activate a variant for an unknown experience (id: ${e})`)}resetExperience(e){if(!this.isActiveInstance)return;const i=this.experienceVariantIndexOverwrites,n=e;i[n];const t=a(i,["symbol"==typeof n?n:n+""]);this.experienceVariantIndexOverwrites=t,this.onChange()}reset(){this.isActiveInstance&&"undefined"!=typeof window&&window.ninetailed&&"function"==typeof window.ninetailed.reset&&window.ninetailed.reset()}setVariableValue({experienceId:e,key:i,value:n,variantIndex:s}){var r;if(!this.isActiveInstance)return;const a=`${e}:${i}`;if((0,t.zq)(null===(r=this.variableOverwrites[a])||void 0===r?void 0:r.value,n))return;const c={type:t.wi.Variable,key:i,value:n,meta:{experienceId:e,variantIndex:s}};this.variableOverwrites=Object.assign(Object.assign({},this.variableOverwrites),{[a]:c}),this.onChangeEmitter.invokeListeners(),this.onChange()}openExperienceEditor(e){if(this.onOpenExperienceEditor&&"function"==typeof this.onOpenExperienceEditor)return this.onOpenExperienceEditor(e)}openExperienceAnalytics(e){t.vF.warn("The `openExperienceAnalytics` method is deprecated and will be removed in a future release. Use `openExperienceEditor` instead to see the experience insights."),window.open(`https://app.ninetailed.io/${this.clientId}/${this.environment}/experiences/${e.id}`,"_blank")}openAudienceEditor(e){if(this.onOpenAudienceEditor&&"function"==typeof this.onOpenAudienceEditor)return this.onOpenAudienceEditor(e)}get pluginApi(){var e;return{version:"7.26.0",open:this.open.bind(this),close:this.close.bind(this),toggle:this.toggle.bind(this),isOpen:this.isOpen,activateAudience:this.activateAudience.bind(this),deactivateAudience:this.deactivateAudience.bind(this),resetAudience:this.resetAudience.bind(this),apiAudiences:(null===(e=this.profile)||void 0===e?void 0:e.audiences)||[],audienceOverwrites:this.audienceOverwrites,activeAudiences:this.activeAudiences,audienceDefinitions:this.audienceDefinitions,setExperienceVariant:this.setExperienceVariant.bind(this),resetExperience:this.resetExperience.bind(this),apiExperienceVariantIndexes:this.apiExperienceVariantIndexes,experienceVariantIndexes:Object.assign(Object.assign({},this.experienceVariantIndexes),this.experienceVariantIndexOverwrites),experienceVariantIndexOverwrites:this.experienceVariantIndexOverwrites,reset:this.reset.bind(this),experiences:this.experiences,openExperienceEditor:this.onOpenExperienceEditor?this.openExperienceEditor.bind(this):void 0,openExperienceAnalytics:this.openExperienceAnalytics.bind(this),openAudienceEditor:this.onOpenAudienceEditor?this.openAudienceEditor.bind(this):void 0}}get windowApi(){return{version:"2.0.0",open:this.open.bind(this),close:this.close.bind(this),toggle:this.toggle.bind(this),activateAudience:this.activateAudience.bind(this),deactivateAudience:this.deactivateAudience.bind(this),resetAudience:this.resetAudience.bind(this),activeAudiences:this.activeAudiences,setExperienceVariant:this.setExperienceVariant.bind(this),resetExperience:this.resetExperience.bind(this),experienceVariantIndexes:Object.assign(Object.assign({},this.experienceVariantIndexes),this.experienceVariantIndexOverwrites),setVariableValue:this.setVariableValue.bind(this),variableOverwrites:this.variableOverwrites}}isKnownAudience(e){return this.potentialAudiences.some(i=>i.id===e)}get potentialAudiences(){const e=this.experiences.map(e=>e.audience).filter(e=>!!e);return(0,t.RK)(this.audienceDefinitions,e,"id")}get activeAudiences(){var e;const i=Object.entries(this.audienceOverwrites).filter(([e,i])=>!i).map(([e])=>e),n=Object.entries(this.audienceOverwrites).filter(([e,i])=>i).map(([e])=>e);return[...(null===(e=this.profile)||void 0===e?void 0:e.audiences)||[],...n].filter(e=>!i.includes(e))}calculateExperienceVariantIndexes(e){return this.experiences.filter(i=>(0,s.sw)({experience:i,profile:e})).reduce((i,n)=>{const t=(0,s.fM)({experience:n,profile:e});return Object.assign(Object.assign({},i),{[n.id]:t.index})},{})}get apiExperienceVariantIndexes(){const e=this.profile;return e?this.calculateExperienceVariantIndexes(e):{}}get experienceVariantIndexes(){const e=this.profile;return e?this.calculateExperienceVariantIndexes(Object.assign(Object.assign({},e),{audiences:this.activeAudiences})):{}}getOverrideKey(e,i){return`${e}:${i}`}applyInlineVariableOverridesForExperience(e,i){const{hasChanges:n,overrides:s}=e.components.reduce((n,s)=>{var r,a,c;if(s.type!==t.jP.InlineVariable)return n;const o=0===i?s.baseline.value:null!==(a=null===(r=s.variants[i-1])||void 0===r?void 0:r.value)&&void 0!==a?a:s.baseline.value,d=this.getOverrideKey(e.id,s.key),h=n.overrides[d],l={type:t.wi.Variable,key:s.key,value:o,meta:{experienceId:e.id,variantIndex:i}};return h&&(0,t.zq)(h.value,o)&&(null===(c=h.meta)||void 0===c?void 0:c.variantIndex)===i?n:{hasChanges:!0,overrides:Object.assign(Object.assign({},n.overrides),{[d]:l})}},{hasChanges:!1,overrides:Object.assign({},this.variableOverwrites)});n&&(this.variableOverwrites=s)}getEffectiveChanges(e=this.changes){if(!e||0===Object.keys(this.variableOverwrites).length)return e||[];const i=[...e.filter(e=>{var i;if(e.type!==t.wi.Variable)return!0;const n=(null===(i=e.meta)||void 0===i?void 0:i.experienceId)?this.getOverrideKey(e.meta.experienceId,e.key):e.key;return!this.variableOverwrites[n]}),...Object.values(this.variableOverwrites)];return t.vF.debug("Overridden changes after applying override:",i),i}}h=s.rw,"object"!=typeof window||"process"in window||(window.process={})}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.