ouisys-engine 5.0.7 → 5.0.8

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.
@@ -1,2 +1,2 @@
1
- import{__awaiter as e,__generator as r,__assign as t}from"tslib";import{createAsyncThunk as n,createSlice as a}from"@reduxjs/toolkit";import{S as o,N as s,L as i,F as c}from"./RemoteDataState-lcf8PfJd.js";import{searchToObject as u}from"./searchToObject.js";import{s as d}from"./storeMsisdn-Cjq8_qYH.js";import{t as l}from"./tracker-DaaILhEr.js";import{t as m}from"./tryGetIPRangeName-QW-9NgzE.js";import"pacman-client";import"uuid";var f=function(e){return e((function(e){return e.moRedirFlow.currentState}))};function v(e){var r=e.msisdnEntry;return function(e){return e.type,r(e.result)}}var y=function(n){var a=n.window,o=n.slug,s=n.country,i=n.msisdn,c=n.device,u=n.offer,d=n.rockmanId,l=n.ip_range_name,m=n.search,f=n.extraParamsQs,v=n.email,y=n.password;return e(void 0,void 0,void 0,(function(){var e,n,S,p,w,I;return r(this,(function(r){return e=new URLSearchParams(t(t(t(t(t(t(t({action:"redirect",slug:o,country:s,device:c,offerId:u.toString(),rockman_id:d,page:encodeURIComponent(a.location.href),network_type:l?"":"wifi"},m&&{search:m}),(null===(I=null===(w=null===(p=a.pac_analytics)||void 0===p?void 0:p.visitor)||void 0===w?void 0:w.page)||void 0===I?void 0:I.includes("agency"))&&{evinaTi:d}),a.securityProcessId&&{securityProcessId:a.securityProcessId}),a.languageCode&&{language_code:a.languageCode}),a.antifraud_id&&{antifraud_id:a.antifraud_id}),v&&y?{email:v,password:y}:{msisdn:i}),f&&{extraParams:f})).toString(),n=a.DEV_BASE_URL||"",S="".concat(n,"/tallyman/v1/?").concat(e),o.includes("za-mtn-beyondvr-r7")?[2,{success:!0,rockman_id:d,redirect_url:S}]:[2,fetch(S).then((function(e){return e.json()}))]}))}))};function S(n,a,o,s){return e(this,void 0,void 0,(function(){var e;return r(this,(function(r){return e=t({offer:n.pac_analytics.visitor.offer},a||{}),[2,p(n,e,o,s)]}))}))}function p(t,n,a,o){return e(this,void 0,void 0,(function(){var e,s,i,c,u,d,l,f,v,S,p,w,I;return r(this,(function(r){switch(r.label){case 0:return e=n.slug,s=n.country,i=n.device,c=n.offer,u=t.location.search.substr(1)||"",d=o?"&".concat(Object.keys(o).map((function(e){return"".concat(e,"=").concat(o[e])})).join("&")):"",l=a.match(/\d+/gi).join(""),f=t.pac_analytics.visitor,v=f.rockmanId,"ci"!==s?[3,2]:[4,m(f)];case 1:return S=r.sent(),[3,3];case 2:S=null,r.label=3;case 3:return[4,y({window:t,slug:e,country:s,msisdn:l,device:i,offer:c,rockmanId:v,ip_range_name:S,search:u,extraParamsQs:d})];case 4:if(!1===(p=r.sent()).success)throw w="ALREADY SUBSCRIBED"===p.message?"AlreadySubscribed":"InvalidMSISDN",(I=new Error("".concat(w,":\n").concat(p.message))).type=w,console.error(I),I;return[2,p.redirect_url]}}))}))}var w={currentState:{type:"MSISDNEntry",result:o({href:"/product"})}},I={currentState:{type:"MSISDNEntry",result:c({errorType:"InvalidMSISDN",error:"Invalid Mobile Number"})}},h={currentState:{type:"MSISDNEntry",result:s()}},g=function(e){var r=u(e);if(!r["mock-flow"])return h;switch(r["current-state"]){case"msisdn-entry-failure-state":return I;case"msisdn-entry-success-state":return w;default:return console.error("Mock Flow not supported"),h}}(window),b=n("moRedirFlow/submitMSISDNAction",(function(t,n){var a=t.window,s=t.msisdn,i=t.extraParams,c=n.getState,u=n.rejectWithValue;return e(void 0,void 0,void 0,(function(){var e,t,n,m,f,v,y,p;return r(this,(function(r){switch(r.label){case 0:if(e=c(),!(null===(p=null===(y=null===(v=null==e?void 0:e.strategy)||void 0===v?void 0:v.currentState)||void 0===y?void 0:y.data)||void 0===p?void 0:p.config))return[2,u({errorType:"UnexpectedState"})];t=e.strategy.currentState.data.config,r.label=1;case 1:return r.trys.push([1,5,,6]),l.advancedInFlow("tallyman.v1-mo-redir","msisdn-submitted",{msisdn:s}),[4,S(a,t,s,i)];case 2:return n=r.sent(),l.advancedInFlow("tallyman.v1-mo-redir","msisdn-submission-success",{msisdn:s}),i&&i.storeMsisdn&&"true"===i.storeMsisdn?[4,d(s).then((function(e){e&&e.data&&e.data.success?l.customEvent("Flow","advance-auto","msisdn-stored-success"):l.customEvent("Flow","advance-auto","msisdn-stored-failed")})).catch((function(e){l.customEvent("Flow","advance-auto","msisdn-stored-error",e)}))]:[3,4];case 3:r.sent(),r.label=4;case 4:return[2,{type:"MSISDNEntry",result:o({href:n})}];case 5:switch(m=r.sent(),console.warn(m),f=void 0,m.type){case"AlreadySubscribed":f="AlreadySubscribed";break;case"InvalidMSISDN":f="InvalidMSISDN";break;default:f="UnknownError"}return l.recedeInFlow("tallyman.v1-mo-redir","msisdn-submission-failure",{msisdn:s,errorType:"UnknownError"}),[2,u({errorType:f,productUrl:m.productUrl})];case 6:return[2]}}))}))})),E=a({name:"moRedirFlow",initialState:g,reducers:{backToStartAction:function(e){l.recedeInFlow("tallyman.v1-mo-redir","mo-redir-state","requested to change phone number"),e.currentState={type:"MSISDNEntry",result:s()}}},extraReducers:function(e){e.addCase(b.pending,(function(e){e.currentState={type:"MSISDNEntry",result:i()}})).addCase(b.fulfilled,(function(e,r){e.currentState=r.payload})).addCase(b.rejected,(function(e,r){e.currentState={type:"MSISDNEntry",result:c(r.payload)}}))}}),_=E.reducer,k=E.actions.backToStartAction;export{k as backToStartAction,v as moRedirFlowMatch,_ as moRedirFlowReducer,b as submitMSISDNAction,f as useMoRedirFlowState};
1
+ import{__awaiter as e,__generator as r,__assign as t}from"tslib";import{createAsyncThunk as n,createSlice as a}from"@reduxjs/toolkit";import{S as o,N as s,L as i,F as c}from"./RemoteDataState-lcf8PfJd.js";import{searchToObject as u}from"./searchToObject.js";import{s as d}from"./storeMsisdn-Cjq8_qYH.js";import{t as l}from"./tracker-DaaILhEr.js";import{t as m}from"./tryGetIPRangeName-QW-9NgzE.js";import"pacman-client";import"uuid";var v=function(e){return e((function(e){return e.moRedirFlow.currentState}))};function f(e){var r=e.msisdnEntry;return function(e){return e.type,r(e.result)}}var y=function(n){var a=n.window,o=n.slug,s=n.country,i=n.msisdn,c=n.device,u=n.offer,d=n.rockmanId,l=n.ip_range_name,m=n.search,v=n.extraParamsQs,f=n.email,y=n.password;return e(void 0,void 0,void 0,(function(){var e,n,p,S,w,I,h,g;return r(this,(function(r){return e=new URLSearchParams(t(t(t(t(t(t(t(t({action:"redirect",slug:o,country:s,device:c,offerId:u.toString(),rockman_id:d,page:encodeURIComponent(a.location.href),network_type:l?"":"wifi"},m&&{search:m}),(null===(I=null===(w=null===(S=a.pac_analytics)||void 0===S?void 0:S.visitor)||void 0===w?void 0:w.page)||void 0===I?void 0:I.includes("agency"))&&{evinaTi:d}),(null===(g=null===(h=a.pac_analytics)||void 0===h?void 0:h.visitor)||void 0===g?void 0:g.ip)&&{client_ip:a.pac_analytics.visitor.ip}),a.securityProcessId&&{securityProcessId:a.securityProcessId}),a.languageCode&&{language_code:a.languageCode}),a.antifraud_id&&{antifraud_id:a.antifraud_id}),f&&y?{email:f,password:y}:{msisdn:i}),v&&{extraParams:v})).toString(),n=a.DEV_BASE_URL||"",p="".concat(n,"/tallyman/v1/?").concat(e),o.includes("za-mtn-beyondvr-r7")?[2,{success:!0,rockman_id:d,redirect_url:p}]:[2,fetch(p).then((function(e){return e.json()}))]}))}))};function p(n,a,o,s){return e(this,void 0,void 0,(function(){var e;return r(this,(function(r){return e=t({offer:n.pac_analytics.visitor.offer},a||{}),[2,S(n,e,o,s)]}))}))}function S(t,n,a,o){return e(this,void 0,void 0,(function(){var e,s,i,c,u,d,l,v,f,p,S,w,I;return r(this,(function(r){switch(r.label){case 0:return e=n.slug,s=n.country,i=n.device,c=n.offer,u=t.location.search.substr(1)||"",d=o?"&".concat(Object.keys(o).map((function(e){return"".concat(e,"=").concat(o[e])})).join("&")):"",l=a.match(/\d+/gi).join(""),v=t.pac_analytics.visitor,f=v.rockmanId,"ci"!==s?[3,2]:[4,m(v)];case 1:return p=r.sent(),[3,3];case 2:p=null,r.label=3;case 3:return[4,y({window:t,slug:e,country:s,msisdn:l,device:i,offer:c,rockmanId:f,ip_range_name:p,search:u,extraParamsQs:d})];case 4:if(!1===(S=r.sent()).success)throw w="ALREADY SUBSCRIBED"===S.message?"AlreadySubscribed":"InvalidMSISDN",(I=new Error("".concat(w,":\n").concat(S.message))).type=w,console.error(I),I;return[2,S.redirect_url]}}))}))}var w={currentState:{type:"MSISDNEntry",result:o({href:"/product"})}},I={currentState:{type:"MSISDNEntry",result:c({errorType:"InvalidMSISDN",error:"Invalid Mobile Number"})}},h={currentState:{type:"MSISDNEntry",result:s()}},g=function(e){var r=u(e);if(!r["mock-flow"])return h;switch(r["current-state"]){case"msisdn-entry-failure-state":return I;case"msisdn-entry-success-state":return w;default:return console.error("Mock Flow not supported"),h}}(window),b=n("moRedirFlow/submitMSISDNAction",(function(t,n){var a=t.window,s=t.msisdn,i=t.extraParams,c=n.getState,u=n.rejectWithValue;return e(void 0,void 0,void 0,(function(){var e,t,n,m,v,f,y,S;return r(this,(function(r){switch(r.label){case 0:if(e=c(),!(null===(S=null===(y=null===(f=null==e?void 0:e.strategy)||void 0===f?void 0:f.currentState)||void 0===y?void 0:y.data)||void 0===S?void 0:S.config))return[2,u({errorType:"UnexpectedState"})];t=e.strategy.currentState.data.config,r.label=1;case 1:return r.trys.push([1,5,,6]),l.advancedInFlow("tallyman.v1-mo-redir","msisdn-submitted",{msisdn:s}),[4,p(a,t,s,i)];case 2:return n=r.sent(),l.advancedInFlow("tallyman.v1-mo-redir","msisdn-submission-success",{msisdn:s}),i&&i.storeMsisdn&&"true"===i.storeMsisdn?[4,d(s).then((function(e){e&&e.data&&e.data.success?l.customEvent("Flow","advance-auto","msisdn-stored-success"):l.customEvent("Flow","advance-auto","msisdn-stored-failed")})).catch((function(e){l.customEvent("Flow","advance-auto","msisdn-stored-error",e)}))]:[3,4];case 3:r.sent(),r.label=4;case 4:return[2,{type:"MSISDNEntry",result:o({href:n})}];case 5:switch(m=r.sent(),console.warn(m),v=void 0,m.type){case"AlreadySubscribed":v="AlreadySubscribed";break;case"InvalidMSISDN":v="InvalidMSISDN";break;default:v="UnknownError"}return l.recedeInFlow("tallyman.v1-mo-redir","msisdn-submission-failure",{msisdn:s,errorType:"UnknownError"}),[2,u({errorType:v,productUrl:m.productUrl})];case 6:return[2]}}))}))})),_=a({name:"moRedirFlow",initialState:g,reducers:{backToStartAction:function(e){l.recedeInFlow("tallyman.v1-mo-redir","mo-redir-state","requested to change phone number"),e.currentState={type:"MSISDNEntry",result:s()}}},extraReducers:function(e){e.addCase(b.pending,(function(e){e.currentState={type:"MSISDNEntry",result:i()}})).addCase(b.fulfilled,(function(e,r){e.currentState=r.payload})).addCase(b.rejected,(function(e,r){e.currentState={type:"MSISDNEntry",result:c(r.payload)}}))}}),E=_.reducer,k=_.actions.backToStartAction;export{k as backToStartAction,f as moRedirFlowMatch,E as moRedirFlowReducer,b as submitMSISDNAction,v as useMoRedirFlowState};
2
2
  //# sourceMappingURL=moRedirFlow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"moRedirFlow.js","sources":["../src/flows/moRedirFlow/hooks/useMoRedirFlowState.ts","../src/flows/moRedirFlow/match.ts","../src/flows/moRedirFlow/api.ts","../src/flows/moRedirFlow/main.ts","../src/flows/moRedirFlow/moRedirFlowSlice.ts"],"sourcesContent":["import { useSelector as IuseSelector } from 'react-redux';\nimport { RootState } from '../../../sharedFlowTypes/StrategyTypes';\n\nexport const useMoRedirFlowState = (useSelector: typeof IuseSelector) => {\n const currentState = useSelector((state: RootState) => state.moRedirFlow.currentState);\n return currentState;\n};\n","import * as RDS from '../../common-types/RemoteDataState';\nimport { MoRedirFlowCurrentState, MSISDNEntryFailure, MSISDNEntrySuccess } from '../../sharedFlowTypes/MoRedirTypes';\n\nfunction moRedirFlowMatch<R>({\n msisdnEntry\n}: {\n msisdnEntry: (rds: RDS.RemoteDataState<MSISDNEntryFailure, MSISDNEntrySuccess>) => R;\n}): (state: MoRedirFlowCurrentState) => R {\n return (state) => {\n switch (state.type) {\n case 'MSISDNEntry':\n return msisdnEntry(state.result);\n default:\n // TODO - this should be an error or something\n return msisdnEntry(state.result);\n }\n };\n}\n\nexport { moRedirFlowMatch };\n","import { IMSISDNSubmissionResult } from '../../sharedFlowTypes/MoRedirTypes';\n\nconst redirect = async ({\n window,\n slug,\n country,\n msisdn,\n device,\n offer,\n rockmanId,\n ip_range_name,\n search,\n extraParamsQs,\n email,\n password\n}: {\n window: Window;\n slug: string;\n country: string;\n msisdn?: string;\n device: string;\n offer: string;\n rockmanId: string;\n ip_range_name?: string;\n search: string;\n extraParamsQs?: string;\n email?: string;\n password?: string;\n}): Promise<IMSISDNSubmissionResult> => {\n const params = new URLSearchParams({\n action: 'redirect',\n slug,\n country,\n device,\n offerId: offer.toString(),\n rockman_id: rockmanId,\n page: encodeURIComponent(window.location.href),\n network_type: ip_range_name ? '' : 'wifi',\n ...(search && { search }),\n ...(window.pac_analytics?.visitor?.page?.includes('agency') && { evinaTi: rockmanId }),\n ...(window.securityProcessId && { securityProcessId: window.securityProcessId }),\n ...(window.languageCode && { language_code: window.languageCode }),\n ...(window.antifraud_id && { antifraud_id: window.antifraud_id }),\n ...(email && password ? { email, password } : { msisdn }),\n ...(extraParamsQs && { extraParams: extraParamsQs })\n }).toString();\n\n const host = window.DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?${params}`;\n\n if (slug.includes('za-mtn-beyondvr-r7')) {\n return {\n success: true,\n rockman_id: rockmanId,\n redirect_url: url\n };\n }\n\n return fetch(url).then((x) => x.json());\n};\n\nexport { redirect };\n","import { IError } from '../../common-types/IError';\nimport tryGetIPRangeName from '../../ips/tryGetIPRangeName';\nimport { IMSISDNSubmissionResult } from '../../sharedFlowTypes/MoRedirTypes';\nimport { IConfig } from '../../sharedFlowTypes/StrategyTypes';\nimport { redirect } from './api';\n\nexport default async function submitMSISDN(\n window: Window,\n maybeConfig: IConfig,\n internationalMSISDN: string,\n extraParams?: { [key: string]: string }\n): Promise<string> {\n const config: IConfig = { offer: window.pac_analytics.visitor.offer, ...(maybeConfig || {}) };\n return submitMSISDNWithConfig(window, config, internationalMSISDN, extraParams);\n}\n\nexport async function submitMSISDNWithConfig(\n window: Window,\n config: IConfig,\n internationalMSISDN: string,\n extraParams?: { [key: string]: string }\n): Promise<string> {\n const { slug, country, device, offer } = config;\n const search = window.location.search.substr(1) || '';\n const extraParamsQs = !extraParams\n ? ''\n : `&${Object.keys(extraParams)\n .map((k) => `${k}=${extraParams[k]}`)\n .join('&')}`;\n const msisdn = internationalMSISDN.match(/\\d+/gi).join('');\n const { visitor } = window.pac_analytics;\n const { rockmanId } = visitor;\n\n const ip_range_name = country === 'ci' ? await tryGetIPRangeName(visitor) : null;\n const result: IMSISDNSubmissionResult = await redirect({\n window,\n slug,\n country,\n msisdn,\n device,\n offer,\n rockmanId,\n ip_range_name,\n search,\n extraParamsQs\n });\n\n if (result.success === false) {\n const type = result.message === 'ALREADY SUBSCRIBED' ? 'AlreadySubscribed' : 'InvalidMSISDN';\n const error = new Error(`${type}:\\n${result.message}`) as IError & { type: string };\n error.type = type;\n console.error(error);\n throw error;\n } else {\n return result.redirect_url;\n }\n}\n","import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport { IHash } from '../../common-types/IHash';\nimport * as RDS from '../../common-types/RemoteDataState';\nimport {\n MoRedirFlowState,\n MSISDNEntryErrorTypes,\n MSISDNEntryFailure,\n MSISDNEntryState,\n MSISDNEntrySuccess\n} from '../../sharedFlowTypes/MoRedirTypes';\nimport { IMockFlowParams, RootState } from '../../sharedFlowTypes/StrategyTypes';\nimport { searchToObject } from '../../utilities/searchToObject';\nimport { storeMsisdn } from '../../utilities/storeMsisdn';\nimport { tracker } from '../../utilities/tracker';\nimport submitMSISDN from './main';\n\nconst mockedMSISDNEntrySuccess: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.Success<MSISDNEntryFailure, MSISDNEntrySuccess>({\n href: '/product'\n })\n }\n};\n\nconst mockedMSISDNEntryFailure: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.Failure<MSISDNEntryFailure, MSISDNEntrySuccess>({\n errorType: 'InvalidMSISDN',\n error: 'Invalid Mobile Number'\n })\n }\n};\n\nconst defaultInitialState: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.NothingYet()\n }\n};\n\nconst setInitialState = (window: Window) => {\n const search = searchToObject(window) as IMockFlowParams<any>;\n if (search['mock-flow']) {\n switch (search['current-state']) {\n case 'msisdn-entry-failure-state':\n return mockedMSISDNEntryFailure;\n case 'msisdn-entry-success-state':\n return mockedMSISDNEntrySuccess;\n default:\n console.error('Mock Flow not supported');\n return defaultInitialState;\n }\n } else {\n return defaultInitialState;\n }\n};\n\nconst initialState = setInitialState(window);\n\ninterface SubmitMSISDNArgs {\n window: Window;\n msisdn: string;\n extraParams?: IHash;\n}\n/**\n * submitMSISDNAction\n * @returns {type: ' 'pinFlow/submitMSISDNAction', payload: {type: PossibleTypes, result: MSISDNEntryState}}\n \n * Calls redirec api that returns a redirect url\n * Sets completed stated\n */\nexport const submitMSISDNAction = createAsyncThunk<\n MSISDNEntryState,\n SubmitMSISDNArgs,\n {\n rejectValue: MSISDNEntryFailure;\n }\n>('moRedirFlow/submitMSISDNAction', async ({ window, msisdn, extraParams }, { getState, rejectWithValue }) => {\n const state: RootState = getState();\n if (!state?.strategy?.currentState?.data?.config) {\n return rejectWithValue({\n errorType: 'UnexpectedState'\n });\n }\n const { config } = state.strategy.currentState.data;\n\n try {\n // Start Redirect Api Call\n tracker.advancedInFlow('tallyman.v1-mo-redir', 'msisdn-submitted', { msisdn });\n const href = await submitMSISDN(window, config, msisdn, extraParams);\n tracker.advancedInFlow('tallyman.v1-mo-redir', 'msisdn-submission-success', { msisdn });\n // End Redirect Api Call\n\n // Start Store Msisdn\n // if storeMsisdn is true, encrypt msisdn and save it in cookie, localStorage, and zürch\n if (extraParams && extraParams.storeMsisdn && extraParams.storeMsisdn === 'true') {\n await storeMsisdn(msisdn)\n .then((data: any) => {\n if (data && data.data && data.data.success) {\n tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-success');\n } else {\n tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-failed');\n }\n })\n .catch((error) => {\n tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-error', error);\n });\n }\n // End Store Msisdn\n\n return {\n type: 'MSISDNEntry',\n result: RDS.Success<MSISDNEntryFailure, MSISDNEntrySuccess>({ href })\n };\n } catch (ex) {\n console.warn(ex);\n let errorType: MSISDNEntryErrorTypes;\n switch (ex.type) {\n case 'AlreadySubscribed':\n errorType = 'AlreadySubscribed';\n break;\n case 'InvalidMSISDN':\n errorType = 'InvalidMSISDN';\n break;\n default:\n errorType = 'UnknownError';\n }\n\n tracker.recedeInFlow('tallyman.v1-mo-redir', 'msisdn-submission-failure', {\n msisdn,\n errorType: 'UnknownError'\n });\n\n return rejectWithValue({\n errorType,\n productUrl: ex.productUrl\n });\n }\n});\n\nconst moRedirFlowSlice = createSlice({\n name: 'moRedirFlow',\n initialState,\n reducers: {\n backToStartAction(state) {\n tracker.recedeInFlow('tallyman.v1-mo-redir', 'mo-redir-state', 'requested to change phone number');\n\n // TODO GO BACK TO IDENTIFY BY MSISDN BASED ON STRATEGY\n state.currentState = { type: 'MSISDNEntry', result: RDS.NothingYet() };\n }\n },\n extraReducers: (builder) => {\n builder\n .addCase(submitMSISDNAction.pending, (state) => {\n state.currentState = { type: 'MSISDNEntry', result: RDS.Loading() };\n })\n .addCase(submitMSISDNAction.fulfilled, (state, action: PayloadAction<MSISDNEntryState>) => {\n state.currentState = action.payload;\n })\n .addCase(submitMSISDNAction.rejected, (state, action: PayloadAction<MSISDNEntryFailure>) => {\n state.currentState = {\n type: 'MSISDNEntry',\n result: RDS.Failure(action.payload)\n };\n });\n }\n});\n\n// Export reducers and actions\nexport const { reducer: moRedirFlowReducer, actions: moRedirFlowActions } = moRedirFlowSlice;\nexport const { backToStartAction } = moRedirFlowActions;\n\n// If you have selectors or thunks related to this slice, export them as named exports as well\nexport const selectMoRedirFlowState = (state: any) => state.moRedirFlow;\n"],"names":["useMoRedirFlowState","useSelector","state","moRedirFlow","currentState","moRedirFlowMatch","_a","msisdnEntry","type","result","redirect","window","slug","country","msisdn","device","offer","rockmanId","ip_range_name","search","extraParamsQs","email","password","params","URLSearchParams","__assign","action","offerId","toString","rockman_id","page","encodeURIComponent","location","href","network_type","_c","_b","pac_analytics","visitor","includes","evinaTi","securityProcessId","languageCode","language_code","antifraud_id","extraParams","host","DEV_BASE_URL","url","concat","success","redirect_url","fetch","then","x","json","submitMSISDN","maybeConfig","internationalMSISDN","config","submitMSISDNWithConfig","substr","Object","keys","map","k","join","match","tryGetIPRangeName","sent","message","error","Error","console","mockedMSISDNEntrySuccess","RDS.Success","mockedMSISDNEntryFailure","RDS.Failure","errorType","defaultInitialState","RDS.NothingYet","initialState","searchToObject","setInitialState","submitMSISDNAction","createAsyncThunk","getState","rejectWithValue","_e","strategy","_d","data","tracker","advancedInFlow","_f","storeMsisdn","customEvent","catch","warn","ex_1","recedeInFlow","productUrl","moRedirFlowSlice","createSlice","name","reducers","backToStartAction","extraReducers","builder","addCase","pending","RDS.Loading","fulfilled","payload","rejected","moRedirFlowReducer","reducer","actions"],"mappings":"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"}
1
+ {"version":3,"file":"moRedirFlow.js","sources":["../src/flows/moRedirFlow/hooks/useMoRedirFlowState.ts","../src/flows/moRedirFlow/match.ts","../src/flows/moRedirFlow/api.ts","../src/flows/moRedirFlow/main.ts","../src/flows/moRedirFlow/moRedirFlowSlice.ts"],"sourcesContent":["import { useSelector as IuseSelector } from 'react-redux';\nimport { RootState } from '../../../sharedFlowTypes/StrategyTypes';\n\nexport const useMoRedirFlowState = (useSelector: typeof IuseSelector) => {\n const currentState = useSelector((state: RootState) => state.moRedirFlow.currentState);\n return currentState;\n};\n","import * as RDS from '../../common-types/RemoteDataState';\nimport { MoRedirFlowCurrentState, MSISDNEntryFailure, MSISDNEntrySuccess } from '../../sharedFlowTypes/MoRedirTypes';\n\nfunction moRedirFlowMatch<R>({\n msisdnEntry\n}: {\n msisdnEntry: (rds: RDS.RemoteDataState<MSISDNEntryFailure, MSISDNEntrySuccess>) => R;\n}): (state: MoRedirFlowCurrentState) => R {\n return (state) => {\n switch (state.type) {\n case 'MSISDNEntry':\n return msisdnEntry(state.result);\n default:\n // TODO - this should be an error or something\n return msisdnEntry(state.result);\n }\n };\n}\n\nexport { moRedirFlowMatch };\n","import { IMSISDNSubmissionResult } from '../../sharedFlowTypes/MoRedirTypes';\n\nconst redirect = async ({\n window,\n slug,\n country,\n msisdn,\n device,\n offer,\n rockmanId,\n ip_range_name,\n search,\n extraParamsQs,\n email,\n password\n}: {\n window: Window;\n slug: string;\n country: string;\n msisdn?: string;\n device: string;\n offer: string;\n rockmanId: string;\n ip_range_name?: string;\n search: string;\n extraParamsQs?: string;\n email?: string;\n password?: string;\n}): Promise<IMSISDNSubmissionResult> => {\n const params = new URLSearchParams({\n action: 'redirect',\n slug,\n country,\n device,\n offerId: offer.toString(),\n rockman_id: rockmanId,\n page: encodeURIComponent(window.location.href),\n network_type: ip_range_name ? '' : 'wifi',\n ...(search && { search }),\n ...(window.pac_analytics?.visitor?.page?.includes('agency') && { evinaTi: rockmanId }),\n ...(window.pac_analytics?.visitor?.ip && { client_ip: window.pac_analytics.visitor.ip }),\n ...(window.securityProcessId && { securityProcessId: window.securityProcessId }),\n ...(window.languageCode && { language_code: window.languageCode }),\n ...(window.antifraud_id && { antifraud_id: window.antifraud_id }),\n ...(email && password ? { email, password } : { msisdn }),\n ...(extraParamsQs && { extraParams: extraParamsQs })\n }).toString();\n\n const host = window.DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?${params}`;\n\n if (slug.includes('za-mtn-beyondvr-r7')) {\n return {\n success: true,\n rockman_id: rockmanId,\n redirect_url: url\n };\n }\n\n return fetch(url).then((x) => x.json());\n};\n\nexport { redirect };\n","import { IError } from '../../common-types/IError';\nimport tryGetIPRangeName from '../../ips/tryGetIPRangeName';\nimport { IMSISDNSubmissionResult } from '../../sharedFlowTypes/MoRedirTypes';\nimport { IConfig } from '../../sharedFlowTypes/StrategyTypes';\nimport { redirect } from './api';\n\nexport default async function submitMSISDN(\n window: Window,\n maybeConfig: IConfig,\n internationalMSISDN: string,\n extraParams?: { [key: string]: string }\n): Promise<string> {\n const config: IConfig = { offer: window.pac_analytics.visitor.offer, ...(maybeConfig || {}) };\n return submitMSISDNWithConfig(window, config, internationalMSISDN, extraParams);\n}\n\nexport async function submitMSISDNWithConfig(\n window: Window,\n config: IConfig,\n internationalMSISDN: string,\n extraParams?: { [key: string]: string }\n): Promise<string> {\n const { slug, country, device, offer } = config;\n const search = window.location.search.substr(1) || '';\n const extraParamsQs = !extraParams\n ? ''\n : `&${Object.keys(extraParams)\n .map((k) => `${k}=${extraParams[k]}`)\n .join('&')}`;\n const msisdn = internationalMSISDN.match(/\\d+/gi).join('');\n const { visitor } = window.pac_analytics;\n const { rockmanId } = visitor;\n\n const ip_range_name = country === 'ci' ? await tryGetIPRangeName(visitor) : null;\n const result: IMSISDNSubmissionResult = await redirect({\n window,\n slug,\n country,\n msisdn,\n device,\n offer,\n rockmanId,\n ip_range_name,\n search,\n extraParamsQs\n });\n\n if (result.success === false) {\n const type = result.message === 'ALREADY SUBSCRIBED' ? 'AlreadySubscribed' : 'InvalidMSISDN';\n const error = new Error(`${type}:\\n${result.message}`) as IError & { type: string };\n error.type = type;\n console.error(error);\n throw error;\n } else {\n return result.redirect_url;\n }\n}\n","import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport { IHash } from '../../common-types/IHash';\nimport * as RDS from '../../common-types/RemoteDataState';\nimport {\n MoRedirFlowState,\n MSISDNEntryErrorTypes,\n MSISDNEntryFailure,\n MSISDNEntryState,\n MSISDNEntrySuccess\n} from '../../sharedFlowTypes/MoRedirTypes';\nimport { IMockFlowParams, RootState } from '../../sharedFlowTypes/StrategyTypes';\nimport { searchToObject } from '../../utilities/searchToObject';\nimport { storeMsisdn } from '../../utilities/storeMsisdn';\nimport { tracker } from '../../utilities/tracker';\nimport submitMSISDN from './main';\n\nconst mockedMSISDNEntrySuccess: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.Success<MSISDNEntryFailure, MSISDNEntrySuccess>({\n href: '/product'\n })\n }\n};\n\nconst mockedMSISDNEntryFailure: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.Failure<MSISDNEntryFailure, MSISDNEntrySuccess>({\n errorType: 'InvalidMSISDN',\n error: 'Invalid Mobile Number'\n })\n }\n};\n\nconst defaultInitialState: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.NothingYet()\n }\n};\n\nconst setInitialState = (window: Window) => {\n const search = searchToObject(window) as IMockFlowParams<any>;\n if (search['mock-flow']) {\n switch (search['current-state']) {\n case 'msisdn-entry-failure-state':\n return mockedMSISDNEntryFailure;\n case 'msisdn-entry-success-state':\n return mockedMSISDNEntrySuccess;\n default:\n console.error('Mock Flow not supported');\n return defaultInitialState;\n }\n } else {\n return defaultInitialState;\n }\n};\n\nconst initialState = setInitialState(window);\n\ninterface SubmitMSISDNArgs {\n window: Window;\n msisdn: string;\n extraParams?: IHash;\n}\n/**\n * submitMSISDNAction\n * @returns {type: ' 'pinFlow/submitMSISDNAction', payload: {type: PossibleTypes, result: MSISDNEntryState}}\n \n * Calls redirec api that returns a redirect url\n * Sets completed stated\n */\nexport const submitMSISDNAction = createAsyncThunk<\n MSISDNEntryState,\n SubmitMSISDNArgs,\n {\n rejectValue: MSISDNEntryFailure;\n }\n>('moRedirFlow/submitMSISDNAction', async ({ window, msisdn, extraParams }, { getState, rejectWithValue }) => {\n const state: RootState = getState();\n if (!state?.strategy?.currentState?.data?.config) {\n return rejectWithValue({\n errorType: 'UnexpectedState'\n });\n }\n const { config } = state.strategy.currentState.data;\n\n try {\n // Start Redirect Api Call\n tracker.advancedInFlow('tallyman.v1-mo-redir', 'msisdn-submitted', { msisdn });\n const href = await submitMSISDN(window, config, msisdn, extraParams);\n tracker.advancedInFlow('tallyman.v1-mo-redir', 'msisdn-submission-success', { msisdn });\n // End Redirect Api Call\n\n // Start Store Msisdn\n // if storeMsisdn is true, encrypt msisdn and save it in cookie, localStorage, and zürch\n if (extraParams && extraParams.storeMsisdn && extraParams.storeMsisdn === 'true') {\n await storeMsisdn(msisdn)\n .then((data: any) => {\n if (data && data.data && data.data.success) {\n tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-success');\n } else {\n tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-failed');\n }\n })\n .catch((error) => {\n tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-error', error);\n });\n }\n // End Store Msisdn\n\n return {\n type: 'MSISDNEntry',\n result: RDS.Success<MSISDNEntryFailure, MSISDNEntrySuccess>({ href })\n };\n } catch (ex) {\n console.warn(ex);\n let errorType: MSISDNEntryErrorTypes;\n switch (ex.type) {\n case 'AlreadySubscribed':\n errorType = 'AlreadySubscribed';\n break;\n case 'InvalidMSISDN':\n errorType = 'InvalidMSISDN';\n break;\n default:\n errorType = 'UnknownError';\n }\n\n tracker.recedeInFlow('tallyman.v1-mo-redir', 'msisdn-submission-failure', {\n msisdn,\n errorType: 'UnknownError'\n });\n\n return rejectWithValue({\n errorType,\n productUrl: ex.productUrl\n });\n }\n});\n\nconst moRedirFlowSlice = createSlice({\n name: 'moRedirFlow',\n initialState,\n reducers: {\n backToStartAction(state) {\n tracker.recedeInFlow('tallyman.v1-mo-redir', 'mo-redir-state', 'requested to change phone number');\n\n // TODO GO BACK TO IDENTIFY BY MSISDN BASED ON STRATEGY\n state.currentState = { type: 'MSISDNEntry', result: RDS.NothingYet() };\n }\n },\n extraReducers: (builder) => {\n builder\n .addCase(submitMSISDNAction.pending, (state) => {\n state.currentState = { type: 'MSISDNEntry', result: RDS.Loading() };\n })\n .addCase(submitMSISDNAction.fulfilled, (state, action: PayloadAction<MSISDNEntryState>) => {\n state.currentState = action.payload;\n })\n .addCase(submitMSISDNAction.rejected, (state, action: PayloadAction<MSISDNEntryFailure>) => {\n state.currentState = {\n type: 'MSISDNEntry',\n result: RDS.Failure(action.payload)\n };\n });\n }\n});\n\n// Export reducers and actions\nexport const { reducer: moRedirFlowReducer, actions: moRedirFlowActions } = moRedirFlowSlice;\nexport const { backToStartAction } = moRedirFlowActions;\n\n// If you have selectors or thunks related to this slice, export them as named exports as well\nexport const selectMoRedirFlowState = (state: any) => state.moRedirFlow;\n"],"names":["useMoRedirFlowState","useSelector","state","moRedirFlow","currentState","moRedirFlowMatch","_a","msisdnEntry","type","result","redirect","window","slug","country","msisdn","device","offer","rockmanId","ip_range_name","search","extraParamsQs","email","password","params","URLSearchParams","__assign","action","offerId","toString","rockman_id","page","encodeURIComponent","location","href","network_type","_d","_c","pac_analytics","_b","visitor","includes","evinaTi","_f","_e","ip","client_ip","securityProcessId","languageCode","language_code","antifraud_id","extraParams","host","DEV_BASE_URL","url","concat","success","redirect_url","fetch","then","x","json","submitMSISDN","maybeConfig","internationalMSISDN","config","submitMSISDNWithConfig","substr","Object","keys","map","k","join","match","tryGetIPRangeName","sent","message","error","Error","console","mockedMSISDNEntrySuccess","RDS.Success","mockedMSISDNEntryFailure","RDS.Failure","errorType","defaultInitialState","RDS.NothingYet","initialState","searchToObject","setInitialState","submitMSISDNAction","createAsyncThunk","getState","rejectWithValue","strategy","data","tracker","advancedInFlow","storeMsisdn","customEvent","catch","warn","ex_1","recedeInFlow","productUrl","moRedirFlowSlice","createSlice","name","reducers","backToStartAction","extraReducers","builder","addCase","pending","RDS.Loading","fulfilled","payload","rejected","moRedirFlowReducer","reducer","actions"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ouisys-engine",
3
- "version": "5.0.7",
3
+ "version": "5.0.8",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "directories": "dist dev-tools",