ouisys-engine 4.7.0-alpha.9 → 5.0.1
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.
- package/dist/checkSubscriptionHander.js +1 -1
- package/dist/checkSubscriptionHander.js.map +1 -1
- package/dist/click2smsFlow.js +1 -1
- package/dist/click2smsFlow.js.map +1 -1
- package/dist/creditCardFlow.js +1 -1
- package/dist/creditCardFlow.js.map +1 -1
- package/dist/handleSubmitNumber.js +1 -1
- package/dist/handleSubmitNumber.js.map +1 -1
- package/dist/loadScriptSrc-Da4autZd.js +2 -0
- package/dist/loadScriptSrc-Da4autZd.js.map +1 -0
- package/dist/moFlow.js +1 -1
- package/dist/moFlow.js.map +1 -1
- package/dist/moRedirFlow.js +1 -1
- package/dist/moRedirFlow.js.map +1 -1
- package/dist/oneClickFlow.js +1 -1
- package/dist/oneClickFlow.js.map +1 -1
- package/dist/pinFlow.js +1 -1
- package/dist/pinFlow.js.map +1 -1
- package/dist/strategy.js +1 -1
- package/dist/strategy.js.map +1 -1
- package/dist/strategySlice-Dw14E22-.js +2 -0
- package/dist/strategySlice-Dw14E22-.js.map +1 -0
- package/dist/types/{OneClickTypes-DF0jodl-.d.ts → OneClickTypes-DjOesaHp.d.ts} +1 -1
- package/dist/types/{StrategyTypes-BEIYqoJV.d.ts → StrategyTypes-CbOgk0N4.d.ts} +3 -2
- package/dist/types/click2smsFlow.d.ts +3 -3
- package/dist/types/handleSubmitNumber.d.ts +3 -3
- package/dist/types/oneClickFlow.d.ts +2 -2
- package/dist/types/strategy.d.ts +12 -4
- package/dist/ussdFlow.js +1 -1
- package/dist/ussdFlow.js.map +1 -1
- package/package.json +5 -1
- package/dist/strategySlice-BoKYQ6OI.js +0 -2
- package/dist/strategySlice-BoKYQ6OI.js.map +0 -1
package/dist/moRedirFlow.js.map
CHANGED
|
@@ -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 ...(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 * as RDS from '../../common-types/RemoteDataState';\nimport tryGetIPRangeName from '../../ips/tryGetIPRangeName';\nimport {\n IMSISDNSubmissionResult,\n MoRedirFlowState,\n MSISDNEntryFailure,\n MSISDNEntrySuccess\n} 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\nexport const mockedMSISDNEntrySuccess: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.Success<MSISDNEntryFailure, MSISDNEntrySuccess>({\n href: '/product'\n })\n }\n};\n\nexport const 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","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 { RootState } from '../../sharedFlowTypes/StrategyTypes';\nimport { storeMsisdn } from '../../utilities/storeMsisdn';\nimport { tracker } from '../../utilities/tracker';\nimport submitMSISDN from './main';\n\nconst initialState: MoRedirFlowState = {\n currentState: {\n type: 'MSISDNEntry',\n result: RDS.NothingYet()\n }\n};\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\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","_b","pac_analytics","visitor","includes","evinaTi","securityProcessId","languageCode","language_code","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","initialState","RDS.NothingYet","submitMSISDNAction","createAsyncThunk","getState","rejectWithValue","strategy","data","tracker","advancedInFlow","storeMsisdn","customEvent","catch","RDS.Success","warn","ex_1","errorType","recedeInFlow","productUrl","moRedirFlowSlice","createSlice","name","reducers","backToStartAction","extraReducers","builder","addCase","pending","RDS.Loading","fulfilled","payload","rejected","RDS.Failure","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.securityProcessId && { securityProcessId: window.securityProcessId }),\n ...(window.languageCode && { language_code: window.languageCode }),\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","_b","pac_analytics","visitor","includes","evinaTi","securityProcessId","languageCode","language_code","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","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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"}
|
package/dist/oneClickFlow.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__awaiter as r,__generator as t,__read as e,__assign as n}from"tslib";import{createAsyncThunk as c,createSlice as o}from"@reduxjs/toolkit";import{S as a,L as i,F as u,N as s}from"./RemoteDataState-lcf8PfJd.js";import{u as l,t as d}from"./tracker-DaaILhEr.js";import{b as f}from"./bupperizeCountry-CEtt0MKz.js";import{l as p}from"./loadScriptInnerHtml-BzQm-AFb.js";import{searchToObject as v}from"./searchToObject.js";import"pacman-client";import"uuid";var m=function(r){return r((function(r){return r.oneClickFlow.currentState}))};function y(r){var t=r.getRedirectUrl,e=r.subscribe;return function(r){switch(r.type){case"GET_REDIRECT_URL":default:return t(r.result);case"SUBCRIBE_AJAX":return e(r.result)}}}function _(e){var n=e.currentRedirectUrl,c=e.country;return r(this,void 0,void 0,(function(){var r;return t(this,(function(t){switch(t.label){case 0:return"pe"!==c.toLowerCase()?[3,3]:[4,new Promise((function(r){var t=setInterval((function(){window.Empello&&(clearInterval(t),r())}),100)}))];case 1:return t.sent(),"undefined"!=typeof window&&window.Empello?[4,new Promise((function(r){var t;null===(t=window.Empello)||void 0===t||t.getToken((function(t){r(t)}))}))]:[3,3];case 2:return r=t.sent(),[2,l(n,"empello_token",r)];case 3:return[2,n]}}))}))}var w=function(r){var t=r,e="ouisys_callback_function".concat(Math.floor(1e4*Math.random()));return new Promise((function(n,c){window[e]=function(r){n(r)},t+=-1===t.indexOf("?")?"?":"&",t+="jsonp=".concat(e);var o=document.createElement("script");o.src=t,o.id=e,document.body.appendChild(o),o.onerror=function(){c(new Error("JSONP request to ".concat(r," failed")))}}))},E=function(n){var c=n.window,o=n.maybeConfig,a=n.extraParams;return r(void 0,void 0,void 0,(function(){var r,n,i,u,s,l,d,m,y,_,E,h,b,g,U,S,k;return t(this,(function(t){switch(t.label){case 0:if(void 0!==c)return[3,1];throw"javascript: console.error('SSR'); void 6";case 1:return r=o.country,n=o.slug,i=o.queryString,u=o.apiAction,s="de-ads.tallymans.com",l=void 0!==c&&c.tid?c.tid:"",d=c.pac_analytics.visitor.offer,m=c.location.search.substr(1),y=(m&&m.length>0?[m]:[]).concat((i||[]).map((function(r){var t=e(r,2),n=t[0],c=t[1];return"".concat(n,"=").concat(c)}))).join("&"),Object.keys(a).forEach((function(r,t){y.length>0&&(y+="&"),y="".concat(function(r,t,e){void 0===e&&(e="");var n=new RegExp("\\b(".concat(t,"=).*?(&|#|$)"));if(r.search(n)>=0)return r.replace(n,"$1".concat(e,"$2"));var c=r.replace(/[?#]$/,"");return"".concat(c+t,"=").concat(e,"&")}(y,r,a[r])).concat(1===t?"&":"")})),_=c.pac_analytics.visitor.rockmanId,"identify-user"!==u?[3,3]:(h=c.DEV_BASE_URL||"",g="".concat(h,"/tallyman/v1/?action=identify-user&country=").concat(f(r),"&slug=").concat(n,"&device=").concat("smart","&offerId=").concat(d,"&rockman_id=").concat(_,"&sam_evina_tid=").concat(l,"&").concat(y),[4,w(g)]);case 2:if(!1===(E=t.sent()).success)throw(S=new Error("Error in getRedirectUrl() identify-user action:\n".concat(E.message))).type="NotOn3g",S;return[2,{subscription_url:E.subscription_url||E.redirect_url,action:function(){return R(E.subscription_url)}}];case 3:return"he"!==u?[3,5]:(h=c.DEV_BASE_URL||"",g="".concat(h,"/tallyman/v1/?action=he&country=").concat(f(r),"&slug=").concat(n,"&device=").concat("smart","&offerId=").concat(d,"&rockman_id=").concat(_,"&sam_evina_tid=").concat(l,"&").concat(y),[4,fetch(g).then((function(r){return r.json()}))]);case 4:if(!1===(U=t.sent()).success)throw(S=new Error("Error in getRedirectUrl() identify-user action:\n".concat(U.message))).type="NotOn3g",S;return p(U.source),[2,{redirect_url:U.redirectUrlWithReplacedUniqid}];case 5:if("om"===r.toLowerCase()){if("false"===(b=v(c)).success)throw(S=new Error("Error in getRedirectUrl() identify-user")).type="NotOn3g",S;return[2,{redirect_url:b.redirect_url||b.url}]}return g="https://".concat(s,"/tallyman/v1/?action=redirect&country=").concat(f(r),"&slug=").concat(n,"&device=").concat("smart","&offerId=").concat(d,"&rockman_id=").concat(_,"&page=").concat(encodeURIComponent(null===(k=null==c?void 0:c.location)||void 0===k?void 0:k.href),"&sam_evina_tid=").concat(l,"&").concat(y),[4,fetch(g).then((function(r){return r.json()}))];case 6:if(!1===(U=t.sent()).success)throw(S=new Error("Error in getRedirectUrl() identify-user action:\n".concat(U.message))).type="NotOn3g",S;return[2,{redirect_url:U.redirect_url}];case 7:return[2]}}))}))},R=function(e,n){return r(void 0,void 0,void 0,(function(){var r,c,o,a,i;return t(this,(function(t){switch(t.label){case 0:return r="undefined"!=typeof window&&window.tid?window.tid:"",c=n?"&".concat(Object.keys(n).map((function(r){return"".concat(r,"=").concat(n[r])})).join("&")):"",o="undefined"!=typeof window&&!0===window.shouldBlock?"&is-clean-traffic=false":"&is-clean-traffic=true",[4,fetch("".concat(e,"&sam_evina_tid=").concat(r).concat(o).concat(c)).then((function(r){return r.json()}))];case 1:if(!1===(a=t.sent()).success)throw(i=new Error("Error in subscribe() one-click-subscribe action:\n".concat(a.message))).type="ALREADY SUBSCRIBED"===a.message?"AlreadySubscribed":"SubscriptionError",i.productUrl=a.product_url?a.product_url:"",i;return[2,a.product_url||a.redirect_url]}}))}))},h=function(n,c,o){return r(void 0,void 0,void 0,(function(){var r,a,i,u,s,l,d,p,v,m;return t(this,(function(t){return void 0===n?[2,"javascript: console.error('SSR'); void 6"]:(r=c.country,a=c.slug,i=c.queryString,u=n.pac_analytics.visitor.offer,s=n.location.search.substr(1),l=(s&&s.length>0?[s]:[]).concat((i||[]).map((function(r){var t=e(r,2),n=t[0],c=t[1];return"".concat(n,"=").concat(c)}))).join("&"),d=o?"&".concat(Object.keys(o).map((function(r){return"".concat(r,"=").concat(o[r])})).join("&")):"",p=n.location.href.split("/")[3].split("?")[0],v=void 0!==n&&n.tid?n.tid:"",m=n.DEV_BASE_URL_BUPPER||"",[2,"".concat(m,"/").concat(f(r),"/").concat(a,"?offer=").concat(u,"&atmobirun=1&rockman_id=").concat(n.pac_analytics.visitor.rockmanId,"&redirPixels=").concat(n.location.host,"&sam_evina_tid=").concat(v,"&x-xcid=").concat(p).concat(d,"&").concat(l)])}))}))},b={currentState:{type:"GET_REDIRECT_URL",result:s()}},g=c("oneClickFlow/getRedirectUrlAction",(function(e,c){var o=e.window,i=e.isGetRedirectBupperWay,u=e.extraParams,l=e.autoRedirect,f=c.getState,p=c.rejectWithValue;return r(void 0,void 0,void 0,(function(){var r,e,c,v,m,y,w,R,b,g,U;return t(this,(function(t){switch(t.label){case 0:r=f(),e=r.strategy.currentState.data,c=e.config,v=e.subscription_url,m=e.redirect_url,y=e.operator,t.label=1;case 1:return t.trys.push([1,8,,9]),!0!==i?[3,4]:[4,h(o,c,n(n({},y&&{operator:y}),u))];case 2:return[4,_({currentRedirectUrl:t.sent(),country:c.country})];case 3:return w=t.sent(),d.customEvent("Flow","advance-auto","redirect-success",{redirect_url:w}),!0!==o.isAutoFraudScreener?!0===l?(d.advancedInFlow("tallyman.v1-one-click","click-redirect-url",{redirect_url:w}),setTimeout((function(){o.location.href=w}),0),[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:w})}]):[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:w})}]:(R=setInterval((function(){o.isEvinaSessionChecked&&(clearInterval(R),d.advancedInFlow("tallyman.v1-one-click","click-redirect-url",{redirect_url:w}),setTimeout((function(){o.location.href=w}),0))}),100),[3,7]);case 4:return v&&null!=v?[2,{type:"SUBCRIBE_AJAX",result:s()}]:m?(d.customEvent("Flow","advance-auto","redirect-success",{redirect_url:m}),[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:m})}]):(d.advancedInFlow("tallyman.v1-one-click","get-redirect-url"),[4,E({window:o,maybeConfig:c,extraParams:n(n({},y&&{operator:y}),u)})]);case 5:return b=t.sent().redirect_url,d.advancedInFlow("tallyman.v1-one-click","get-redirect-url-success"),[4,_({currentRedirectUrl:b,country:c.country})];case 6:if(g=t.sent(),d.customEvent("Flow","advance-auto","redirect-success",{updated_redirect_url:g}),!0!==l&&!0!==o.isAutoFraudScreener)return[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:g})}];d.advancedInFlow("tallyman.v1-one-click","click-redirect-url",{updated_redirect_url:g}),setTimeout((function(){o.location.href=g}),0),t.label=7;case 7:return[3,9];case 8:return U=t.sent(),console.warn(U),d.recedeInFlow("tallyman.v1-one-click","get-redirect-url-failure",{errorType:"UnknownError"}),[2,p({errorType:"UnknownError",error:U.toString()})];case 9:return[2]}}))}))})),U=c("oneClickFlow/subscribeUrlAction",(function(e,n){var c=e.window,o=e.autoRedirect,i=e.extraParams,u=n.getState,s=n.rejectWithValue;return r(void 0,void 0,void 0,(function(){var r,e,n,l;return t(this,(function(t){switch(t.label){case 0:r=u(),e=r.strategy.currentState.data.subscription_url,t.label=1;case 1:return t.trys.push([1,4,,5]),d.advancedInFlow("tallyman.v1-one-click","click-subscribe"),[4,R(e,i)];case 2:return[4,t.sent()];case 3:return n=t.sent(),d.advancedInFlow("tallyman.v1-one-click","click-subscribe-success",{product_url:n}),!0===o&&(d.customEvent("Flow","advance-auto","click-product-url",{product_url:n}),c.location.href=n),[2,{type:"SUBCRIBE_AJAX",result:a({productUrl:n})}];case 4:return l=t.sent(),console.warn(l),d.recedeInFlow("tallyman.v1-one-click","click-subscribe-failure",{error:l.toString()}),[2,s({errorType:"UnknownError",error:l.toString(),productUrl:l.productUrl})];case 5:return[2]}}))}))})),S=o({name:"oneClickFlow",initialState:b,reducers:{},extraReducers:function(r){r.addCase(g.pending,(function(r){r.currentState={type:"GET_REDIRECT_URL",result:i()}})).addCase(g.fulfilled,(function(r,t){r.currentState=t.payload})).addCase(g.rejected,(function(r,t){r.currentState={type:"GET_REDIRECT_URL",result:u(t.payload)}})).addCase(U.pending,(function(r){r.currentState={type:"SUBCRIBE_AJAX",result:i()}})).addCase(U.fulfilled,(function(r,t){r.currentState=t.payload})).addCase(U.rejected,(function(r,t){r.currentState={type:"SUBCRIBE_AJAX",result:u(t.payload)}}))}}),k=S.reducer;S.actions;export{g as getRedirectUrlAction,y as oneClickFlowMatch,k as oneClickFlowReducer,U as subscribeUrlAction,m as useOneClickFlowState};
|
|
1
|
+
import{__awaiter as r,__generator as e,__assign as t,__read as n}from"tslib";import{createAsyncThunk as c,createSlice as o}from"@reduxjs/toolkit";import{S as a,L as i,F as u,N as s}from"./RemoteDataState-lcf8PfJd.js";import{u as l,t as d}from"./tracker-DaaILhEr.js";import{searchToObject as f}from"./searchToObject.js";import{b as v}from"./bupperizeCountry-CEtt0MKz.js";import{l as p}from"./loadScriptInnerHtml-BzQm-AFb.js";import"pacman-client";import"uuid";var m=function(r){return r((function(r){return r.oneClickFlow.currentState}))};function _(r){var e=r.getRedirectUrl,t=r.subscribe;return function(r){switch(r.type){case"GET_REDIRECT_URL":default:return e(r.result);case"SUBCRIBE_AJAX":return t(r.result)}}}function w(t){var n=t.currentRedirectUrl,c=t.country;return r(this,void 0,void 0,(function(){var r;return e(this,(function(e){switch(e.label){case 0:return"pe"!==c.toLowerCase()?[3,3]:[4,new Promise((function(r){var e=setInterval((function(){window.Empello&&(clearInterval(e),r())}),100)}))];case 1:return e.sent(),"undefined"!=typeof window&&window.Empello?[4,new Promise((function(r){var e;null===(e=window.Empello)||void 0===e||e.getToken((function(e){r(e)}))}))]:[3,3];case 2:return r=e.sent(),[2,l(n,"empello_token",r)];case 3:return[2,n]}}))}))}var y=function(c){var o=c.window,a=c.extraParams,i=c.url;return r(void 0,void 0,void 0,(function(){var r,c,u,s,l,d;return e(this,(function(e){switch(e.label){case 0:r=(null==o?void 0:o.tid)||"",c=(null==o?void 0:o.shouldBlock)?"false":"true",u=(null==o?void 0:o.antifraud_id)||"",s=Object.entries(a||{}).map((function(r){var e=n(r,2),t=e[0],c=e[1];return"".concat(t,"=").concat(encodeURIComponent(c))})).join("&"),e.label=1;case 1:return e.trys.push([1,4,,5]),f=i,v=t({sam_evina_tid:r,antifraud_id:u,"is-clean-traffic":c},Object.fromEntries(new URLSearchParams(s))),p=new URLSearchParams(v).toString(),l="".concat(f).concat(p),[4,fetch(l)];case 2:return[4,e.sent().json()];case 3:return[2,e.sent()];case 4:throw d=e.sent(),console.error("Error fetching subscription:",d),d;case 5:return[2]}var f,v,p}))}))},E=function(r){var e=r,t="ouisys_callback_function".concat(Math.floor(1e4*Math.random()));return new Promise((function(n,c){window[t]=function(r){n(r)},e+=-1===e.indexOf("?")?"?":"&",e+="jsonp=".concat(t);var o=document.createElement("script");o.src=e,o.id=t,document.body.appendChild(o),o.onerror=function(){c(new Error("JSONP request to ".concat(r," failed")))}}))},R=function(t){var c=t.window,o=t.maybeConfig,a=t.extraParams;return r(void 0,void 0,void 0,(function(){var r,t,i,u,s,l,d,m,_,w,y,R,S,b,U,g,k;return e(this,(function(e){switch(e.label){case 0:if(void 0!==c)return[3,1];throw"javascript: console.error('SSR'); void 6";case 1:return r=o.country,t=o.slug,i=o.queryString,u=o.apiAction,s="de-ads.tallymans.com",l=void 0!==c&&c.tid?c.tid:"",d=c.pac_analytics.visitor.offer,m=c.location.search.substr(1),_=(m&&m.length>0?[m]:[]).concat((i||[]).map((function(r){var e=n(r,2),t=e[0],c=e[1];return"".concat(t,"=").concat(c)}))).join("&"),Object.keys(a).forEach((function(r,e){_.length>0&&(_+="&"),_="".concat(function(r,e,t){void 0===t&&(t="");var n=new RegExp("\\b(".concat(e,"=).*?(&|#|$)"));if(r.search(n)>=0)return r.replace(n,"$1".concat(t,"$2"));var c=r.replace(/[?#]$/,"");return"".concat(c+e,"=").concat(t,"&")}(_,r,a[r])).concat(1===e?"&":"")})),w=c.pac_analytics.visitor.rockmanId,"identify-user"!==u?[3,3]:(R=c.DEV_BASE_URL||"",b="".concat(R,"/tallyman/v1/?action=identify-user&country=").concat(v(r),"&slug=").concat(t,"&device=").concat("smart","&offerId=").concat(d,"&rockman_id=").concat(w,"&sam_evina_tid=").concat(l,"&").concat(_),[4,E(b)]);case 2:if(!1===(y=e.sent()).success)throw(g=new Error("Error in getRedirectUrl() identify-user action:\n".concat(y.message))).type="NotOn3g",g;return[2,{subscription_url:y.subscription_url||y.redirect_url,action:function(){return h(y.subscription_url)}}];case 3:return"he"!==u?[3,5]:(R=c.DEV_BASE_URL||"",b="".concat(R,"/tallyman/v1/?action=he&country=").concat(v(r),"&slug=").concat(t,"&device=").concat("smart","&offerId=").concat(d,"&rockman_id=").concat(w,"&sam_evina_tid=").concat(l,"&").concat(_),[4,fetch(b).then((function(r){return r.json()}))]);case 4:if(!1===(U=e.sent()).success)throw(g=new Error("Error in getRedirectUrl() identify-user action:\n".concat(U.message))).type="NotOn3g",g;return p(U.source),[2,{redirect_url:U.redirectUrlWithReplacedUniqid}];case 5:if("om"===r.toLowerCase()){if("false"===(S=f(c)).success)throw(g=new Error("Error in getRedirectUrl() identify-user")).type="NotOn3g",g;return[2,{redirect_url:S.redirect_url||S.url}]}return b="https://".concat(s,"/tallyman/v1/?action=redirect&country=").concat(v(r),"&slug=").concat(t,"&device=").concat("smart","&offerId=").concat(d,"&rockman_id=").concat(w,"&page=").concat(encodeURIComponent(null===(k=null==c?void 0:c.location)||void 0===k?void 0:k.href),"&sam_evina_tid=").concat(l,"&").concat(_),[4,fetch(b).then((function(r){return r.json()}))];case 6:if(!1===(U=e.sent()).success)throw(g=new Error("Error in getRedirectUrl() identify-user action:\n".concat(U.message))).type="NotOn3g",g;return[2,{redirect_url:U.redirect_url}];case 7:return[2]}}))}))},h=function(t,n){return r(void 0,void 0,void 0,(function(){var r,c;return e(this,(function(e){switch(e.label){case 0:return[4,y({window:window,extraParams:n,url:t})];case 1:if(!1===(r=e.sent()).success)throw(c=new Error("Error in subscribe() one-click-subscribe action:\n".concat(r.message))).type="ALREADY SUBSCRIBED"===r.message?"AlreadySubscribed":"SubscriptionError",c.productUrl=r.product_url?r.product_url:"",c;return[2,r.product_url||r.redirect_url]}}))}))},S=function(t,c,o){return r(void 0,void 0,void 0,(function(){var r,a,i,u,s,l,d,f,p,m;return e(this,(function(e){return void 0===t?[2,"javascript: console.error('SSR'); void 6"]:(r=c.country,a=c.slug,i=c.queryString,u=t.pac_analytics.visitor.offer,s=t.location.search.substr(1),l=(s&&s.length>0?[s]:[]).concat((i||[]).map((function(r){var e=n(r,2),t=e[0],c=e[1];return"".concat(t,"=").concat(c)}))).join("&"),d=o?"&".concat(Object.keys(o).map((function(r){return"".concat(r,"=").concat(o[r])})).join("&")):"",f=t.location.href.split("/")[3].split("?")[0],p=void 0!==t&&t.tid?t.tid:"",m=t.DEV_BASE_URL_BUPPER||"",[2,"".concat(m,"/").concat(v(r),"/").concat(a,"?offer=").concat(u,"&atmobirun=1&rockman_id=").concat(t.pac_analytics.visitor.rockmanId,"&redirPixels=").concat(t.location.host,"&sam_evina_tid=").concat(p,"&x-xcid=").concat(f).concat(d,"&").concat(l)])}))}))},b={currentState:{type:"GET_REDIRECT_URL",result:a({redirectUrl:"/product"})}},U={currentState:{type:"SUBCRIBE_AJAX",result:s()}},g={currentState:{type:"GET_REDIRECT_URL",result:s()}},k=function(r){var e=f(r);if(!e["mock-flow"])return g;switch(e["current-state"]){case"redirect-url-success-state":return b;case"subscribe-ajax-state":return U;default:return console.error("Mock Flow not supported"),g}}(window),I=c("oneClickFlow/getRedirectUrlAction",(function(n,c){var o=n.window,i=n.isGetRedirectBupperWay,u=n.extraParams,l=n.autoRedirect,v=c.getState,p=c.rejectWithValue;return r(void 0,void 0,void 0,(function(){var r,n,c,m,_,y,E,h,b,U,g,I,C,T;return e(this,(function(e){switch(e.label){case 0:if(r=v(),f(o)["mock-flow"])return[2,k.currentState];if(!(null===(T=null===(C=null===(I=null==r?void 0:r.strategy)||void 0===I?void 0:I.currentState)||void 0===C?void 0:C.data)||void 0===T?void 0:T.config))return[2,p({errorType:"UnexpectedState"})];n=r.strategy.currentState.data,c=n.config,m=n.subscription_url,_=n.redirect_url,y=n.operator,e.label=1;case 1:return e.trys.push([1,8,,9]),!0!==i?[3,4]:[4,S(o,c,t(t({},y&&{operator:y}),u))];case 2:return[4,w({currentRedirectUrl:e.sent(),country:c.country})];case 3:return E=e.sent(),d.customEvent("Flow","advance-auto","redirect-success",{redirect_url:E}),!0!==o.isAutoFraudScreener?!0===l?(d.advancedInFlow("tallyman.v1-one-click","click-redirect-url",{redirect_url:E}),setTimeout((function(){o.location.href=E}),0),[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:E})}]):[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:E})}]:(h=setInterval((function(){o.isEvinaSessionChecked&&(clearInterval(h),d.advancedInFlow("tallyman.v1-one-click","click-redirect-url",{redirect_url:E}),setTimeout((function(){o.location.href=E}),0))}),100),[3,7]);case 4:return m&&null!=m?[2,{type:"SUBCRIBE_AJAX",result:s()}]:_?(d.customEvent("Flow","advance-auto","redirect-success",{redirect_url:_}),[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:_})}]):(d.advancedInFlow("tallyman.v1-one-click","get-redirect-url"),[4,R({window:o,maybeConfig:c,extraParams:t(t({},y&&{operator:y}),u)})]);case 5:return b=e.sent().redirect_url,d.advancedInFlow("tallyman.v1-one-click","get-redirect-url-success"),[4,w({currentRedirectUrl:b,country:c.country})];case 6:if(U=e.sent(),d.customEvent("Flow","advance-auto","redirect-success",{updated_redirect_url:U}),!0!==l&&!0!==o.isAutoFraudScreener)return[2,{type:"GET_REDIRECT_URL",result:a({redirectUrl:U})}];d.advancedInFlow("tallyman.v1-one-click","click-redirect-url",{updated_redirect_url:U}),setTimeout((function(){o.location.href=U}),0),e.label=7;case 7:return[3,9];case 8:return g=e.sent(),console.warn(g),d.recedeInFlow("tallyman.v1-one-click","get-redirect-url-failure",{errorType:"UnknownError"}),[2,p({errorType:"UnknownError",error:g.toString()})];case 9:return[2]}}))}))})),C=c("oneClickFlow/subscribeUrlAction",(function(t,n){var c=t.window,o=t.autoRedirect,i=t.extraParams,u=n.getState,s=n.rejectWithValue;return r(void 0,void 0,void 0,(function(){var r,t,n,l,f,v,p;return e(this,(function(e){switch(e.label){case 0:if(r=u(),!(null===(p=null===(v=null===(f=null==r?void 0:r.strategy)||void 0===f?void 0:f.currentState)||void 0===v?void 0:v.data)||void 0===p?void 0:p.config))return[2,s({errorType:"UnexpectedState"})];t=r.strategy.currentState.data.subscription_url,e.label=1;case 1:return e.trys.push([1,4,,5]),d.advancedInFlow("tallyman.v1-one-click","click-subscribe"),[4,h(t,i)];case 2:return[4,e.sent()];case 3:return n=e.sent(),d.advancedInFlow("tallyman.v1-one-click","click-subscribe-success",{product_url:n}),!0===o&&(d.customEvent("Flow","advance-auto","click-product-url",{product_url:n}),c.location.href=n),[2,{type:"SUBCRIBE_AJAX",result:a({productUrl:n})}];case 4:return l=e.sent(),console.warn(l),d.recedeInFlow("tallyman.v1-one-click","click-subscribe-failure",{error:l.toString()}),[2,s({errorType:"UnknownError",error:l.toString(),productUrl:l.productUrl})];case 5:return[2]}}))}))})),T=o({name:"oneClickFlow",initialState:k,reducers:{},extraReducers:function(r){r.addCase(I.pending,(function(r){r.currentState={type:"GET_REDIRECT_URL",result:i()}})).addCase(I.fulfilled,(function(r,e){r.currentState=e.payload})).addCase(I.rejected,(function(r,e){r.currentState={type:"GET_REDIRECT_URL",result:u(e.payload)}})).addCase(C.pending,(function(r){r.currentState={type:"SUBCRIBE_AJAX",result:i()}})).addCase(C.fulfilled,(function(r,e){r.currentState=e.payload})).addCase(C.rejected,(function(r,e){r.currentState={type:"SUBCRIBE_AJAX",result:u(e.payload)}}))}}),j=T.reducer;T.actions;export{I as getRedirectUrlAction,_ as oneClickFlowMatch,j as oneClickFlowReducer,C as subscribeUrlAction,m as useOneClickFlowState};
|
|
2
2
|
//# sourceMappingURL=oneClickFlow.js.map
|
package/dist/oneClickFlow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oneClickFlow.js","sources":["../src/flows/oneClickFlow/hooks/useOneClickFlowState.ts","../src/flows/oneClickFlow/match.ts","../src/utilities/addEmpelloToken.ts","../src/utilities/replaceUrlParam.ts","../src/flows/oneClickFlow/main.ts","../src/flows/oneClickFlow/oneClickFlowSlice.ts"],"sourcesContent":["import { useSelector as IuseSelector } from 'react-redux';\nimport { RootState } from '../../../sharedFlowTypes/StrategyTypes';\n\nexport const useOneClickFlowState = (useSelector: typeof IuseSelector) => {\n const currentState = useSelector((state: RootState) => state.oneClickFlow.currentState);\n return currentState;\n};\n","import * as RDS from '../../common-types/RemoteDataState';\nimport {\n IGETREDIRECTURLFailure,\n IGETREDIRECTURLSuccess,\n OneClickFlowCurrentState,\n SubscribeFailure,\n SubscribeSuccess\n} from '../../sharedFlowTypes/OneClickTypes';\n\nfunction oneClickFlowMatch<R>({\n getRedirectUrl,\n subscribe\n}: {\n getRedirectUrl: (rds: RDS.RemoteDataState<IGETREDIRECTURLFailure, IGETREDIRECTURLSuccess>) => R;\n subscribe?: (rds: RDS.RemoteDataState<SubscribeFailure, SubscribeSuccess>) => R;\n}): (state: OneClickFlowCurrentState) => R {\n return (state) => {\n switch (state.type) {\n case 'GET_REDIRECT_URL':\n return getRedirectUrl(state.result);\n case 'SUBCRIBE_AJAX':\n return subscribe(state.result);\n default:\n // TODO - this should be an error or something\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return getRedirectUrl(state.result);\n }\n };\n}\n\nexport { oneClickFlowMatch };\n","import { updateUrlParameter } from '../pacman/queryString';\n\nexport async function addEmpelloToken({\n currentRedirectUrl,\n country\n}: {\n currentRedirectUrl: string;\n country: string;\n}) {\n if (country.toLowerCase() === 'pe') {\n // Empello script is added on server\n\n await new Promise<void>((resolve) => {\n // check if empello script is loaded and available\n const checkEmpelloAvailability = setInterval(() => {\n if (window.Empello) {\n clearInterval((checkEmpelloAvailability as unknown) as number);\n resolve();\n }\n }, 100);\n });\n if (typeof window !== 'undefined' && window.Empello) {\n // call getToken function from empello\n const token = await new Promise<string>((resolve) => {\n window.Empello?.getToken((empelloToken: string) => {\n resolve(empelloToken);\n });\n });\n\n const url = updateUrlParameter(currentRedirectUrl, 'empello_token', token);\n return url;\n }\n }\n\n return currentRedirectUrl;\n}\n","export const replaceUrlParam = (url: string, paramName: string, paramValue = '') => {\n const pattern = new RegExp(`\\\\b(${paramName}=).*?(&|#|$)`);\n if (url.search(pattern) >= 0) {\n return url.replace(pattern, `$1${paramValue}$2`);\n }\n const newUrl = url.replace(/[?#]$/, '');\n return `${newUrl + paramName}=${paramValue}&`;\n};\n","import { IError } from '../../common-types/IError';\nimport { IHash } from '../../common-types/IHash';\nimport * as RDS from '../../common-types/RemoteDataState';\nimport {\n IIDentifyUserResult,\n ILinkExtraParams,\n ISubscribeResult,\n OneClickFlowState\n} from '../../sharedFlowTypes/OneClickTypes';\nimport { IConfig } from '../../sharedFlowTypes/StrategyTypes';\nimport { bupperizeCountry } from '../../utilities/bupperizeCountry';\nimport { loadScriptInnerHtml } from '../../utilities/loadScriptInnerHtml';\nimport { replaceUrlParam } from '../../utilities/replaceUrlParam';\nimport { searchToObject } from '../../utilities/searchToObject';\n\nexport const additionalQueryString = `msisdnSubmitted=Y&legalCheckbox=Y&incentivizedCheckbox=Y&op_confirmCheckbox=N`;\n\nconst fetchJsonp: <T>(_url: string) => Promise<T> = (_url: string) => {\n let url = _url;\n const ouisys_callback_function = `ouisys_callback_function${Math.floor(Math.random() * 10000)}`;\n return new Promise((resolve, reject) => {\n // @ts-ignore\n window[ouisys_callback_function] = (arg) => {\n resolve(arg);\n };\n\n url += url.indexOf('?') === -1 ? '?' : '&';\n url += `jsonp=${ouisys_callback_function}`;\n const script = document.createElement('script');\n script.src = url;\n script.id = ouisys_callback_function;\n document.body.appendChild(script);\n\n // Caught if got 404/500\n script.onerror = () => {\n reject(new Error(`JSONP request to ${_url} failed`));\n };\n });\n};\n\nexport const getRedirectUrl = async ({\n window,\n maybeConfig,\n extraParams\n}: {\n window: Window;\n maybeConfig: IConfig;\n extraParams?: ILinkExtraParams;\n}): Promise<{\n subscription_url?: string;\n redirect_url?: string;\n action?: () => Promise<string>;\n}> => {\n if (typeof window === 'undefined') {\n // eslint-disable-next-line no-throw-literal, no-script-url\n throw \"javascript: console.error('SSR'); void 6\";\n } else {\n const { country, slug, queryString, apiAction } = maybeConfig;\n const customDomain = 'de-ads.tallymans.com';\n const evinaTid = typeof window !== 'undefined' && window.tid ? window.tid : '';\n\n const { offer } = window.pac_analytics.visitor;\n const s = window.location.search.substr(1);\n // @ts-ignore\n let search = (!!s && s.length > 0 ? [s] : []).concat((queryString || []).map(([k, v]) => `${k}=${v}`)).join('&');\n\n Object.keys(extraParams).forEach((element, index) => {\n // Check if search already has query parameters\n if (search.length > 0) {\n // If there are existing parameters, add '&' before appending the new one\n search += '&';\n }\n search = `${replaceUrlParam(search, element, extraParams[element])}${index === 1 ? '&' : ''}`;\n });\n const { rockmanId } = window.pac_analytics.visitor;\n\n if (apiAction === 'identify-user') {\n const host = (window as Window).DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?action=identify-user&country=${bupperizeCountry(\n country\n )}&slug=${slug}&device=${'smart'}&offerId=${offer}&rockman_id=${rockmanId}&sam_evina_tid=${evinaTid}&${search}`;\n const result = await fetchJsonp<IIDentifyUserResult>(url);\n if (result.success === false) {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user action:\\n${result.message}`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n return {\n subscription_url: result.subscription_url || result.redirect_url,\n action: () => subscribe(result.subscription_url)\n };\n }\n } else if (apiAction === 'he') {\n const host = (window as Window).DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?action=he&country=${bupperizeCountry(\n country\n )}&slug=${slug}&device=${'smart'}&offerId=${offer}&rockman_id=${rockmanId}&sam_evina_tid=${evinaTid}&${search}`;\n const result = await fetch(url).then((x) => x.json());\n if (result.success === false) {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user action:\\n${result.message}`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n loadScriptInnerHtml(result.source);\n return { redirect_url: result.redirectUrlWithReplacedUniqid };\n }\n } else {\n if (country.toLowerCase() === 'om') {\n const searchObj = searchToObject(window) as {\n redirect_url: string;\n url: string;\n msisdn: string;\n success: 'true' | 'false';\n };\n if (searchObj.success === 'false') {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n return { redirect_url: searchObj.redirect_url || searchObj.url };\n }\n }\n const url = `https://${customDomain}/tallyman/v1/?action=redirect&country=${bupperizeCountry(\n country\n )}&slug=${slug}&device=${'smart'}&offerId=${offer}&rockman_id=${rockmanId}&page=${encodeURIComponent(\n window?.location?.href\n )}&sam_evina_tid=${evinaTid}&${search}`;\n const result = await fetch(url).then((x) => x.json());\n\n if (result.success === false) {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user action:\\n${result.message}`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n return { redirect_url: result.redirect_url };\n }\n }\n }\n};\n\nexport const subscribe: (url: string, extraParams?: IHash) => Promise<string> = async (\n url: string,\n extraParams?: IHash\n) => {\n const evinaTid = typeof window !== 'undefined' && window.tid ? window.tid : '';\n const extraParamsQs = !extraParams\n ? ''\n : `&${Object.keys(extraParams)\n .map((k) => `${k}=${extraParams[k]}`)\n .join('&')}`;\n\n const isCleanTraffic =\n typeof window !== 'undefined' && window.shouldBlock === true ? '&is-clean-traffic=false' : '&is-clean-traffic=true';\n\n const result: ISubscribeResult = await fetch(\n `${url}&sam_evina_tid=${evinaTid}${isCleanTraffic}${extraParamsQs}`\n ).then((x) => x.json());\n\n if (result.success === false) {\n const subscribeError = new Error(`Error in subscribe() one-click-subscribe action:\\n${result.message}`) as {\n productUrl: string;\n } & IError;\n subscribeError.type = result.message === 'ALREADY SUBSCRIBED' ? 'AlreadySubscribed' : 'SubscriptionError';\n subscribeError.productUrl = result.product_url ? result.product_url : '';\n throw subscribeError;\n } else {\n return result.product_url || result.redirect_url;\n }\n};\n\nexport const getRedirectUrlBupperWay = async (\n window: Window,\n maybeConfig: IConfig,\n extraParams?: ILinkExtraParams\n): Promise<string> => {\n if (typeof window === 'undefined') {\n // eslint-disable-next-line no-script-url\n return \"javascript: console.error('SSR'); void 6\";\n }\n const { country, slug, queryString } = maybeConfig;\n const { offer } = window.pac_analytics.visitor;\n const s = window.location.search.substr(1);\n // @ts-ignore\n const search = (!!s && s.length > 0 ? [s] : []).concat((queryString || []).map(([k, v]) => `${k}=${v}`)).join('&');\n const extraParamsQs = !extraParams\n ? ''\n : `&${Object.keys(extraParams)\n .map((k) => `${k}=${extraParams[k]}`)\n .join('&')}`;\n\n // one click flow must use http not https\n const xcid = window.location.href.split('/')[3].split('?')[0];\n const evinaTid = typeof window !== 'undefined' && window.tid ? window.tid : '';\n\n const host = (window as Window).DEV_BASE_URL_BUPPER || '';\n return `${host}/${bupperizeCountry(country)}/${slug}?offer=${offer}&atmobirun=1&rockman_id=${\n window.pac_analytics.visitor.rockmanId\n }&redirPixels=${window.location.host}&sam_evina_tid=${evinaTid}&x-xcid=${xcid}${extraParamsQs}&${search}`;\n};\n\nexport const mockedRedirectUrlSuccessState: OneClickFlowState = {\n currentState: {\n type: 'GET_REDIRECT_URL',\n // @ts-ignore\n result: RDS.Success<IGETREDIRECTURLFailure, IGETREDIRECTURLSuccess>({ redirectUrl: '/product' })\n }\n};\n\nexport const mockedSubscribeAjaxState: OneClickFlowState = {\n currentState: {\n type: 'SUBCRIBE_AJAX',\n // @ts-ignore\n result: RDS.NothingYet()\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 AJAXSUBSCRIBEState,\n GETREDIRECTUrlState,\n IGETREDIRECTURLFailure,\n OneClickFlowState,\n SubscribeFailure\n} from '../../sharedFlowTypes/OneClickTypes';\nimport { RootState } from '../../sharedFlowTypes/StrategyTypes';\nimport { addEmpelloToken } from '../../utilities/addEmpelloToken';\nimport { tracker } from '../../utilities/tracker';\nimport { getRedirectUrl, getRedirectUrlBupperWay, subscribe } from './main';\n\nconst initialState: OneClickFlowState = {\n currentState: {\n type: 'GET_REDIRECT_URL',\n result: RDS.NothingYet()\n }\n};\n\ninterface GetRedirectUrlArgs {\n window: Window;\n extraParams?: IHash;\n autoRedirect?: boolean;\n isGetRedirectBupperWay?: boolean;\n ignoreUrlParams?: boolean;\n}\n/**\n * getRedirectUrlAction\n * @returns {type: ' 'oneClickFlow/getRedirectUrlAction', payload: {type: PossibleTypes, result: GETREDIRECTUrlState}}\n \n * Calls redirect api to get a redirect url for the user to be redirected to\n * Can also create a bupper redirect url\n */\nexport const getRedirectUrlAction = createAsyncThunk<\n GETREDIRECTUrlState,\n GetRedirectUrlArgs,\n {\n rejectValue: IGETREDIRECTURLFailure;\n }\n>(\n 'oneClickFlow/getRedirectUrlAction',\n // @ts-ignore\n async ({ window, isGetRedirectBupperWay, extraParams, autoRedirect }, { getState, rejectWithValue }) => {\n const state: RootState = getState();\n\n const { config, subscription_url, redirect_url, operator } = state.strategy.currentState.data;\n try {\n if (isGetRedirectBupperWay === true) {\n const redirectUrl = await getRedirectUrlBupperWay(window, config, {\n ...(operator && { operator }),\n ...extraParams\n });\n\n // add empellow token for specific country\n const updatedRedirectUrl = await addEmpelloToken({\n currentRedirectUrl: redirectUrl,\n country: config.country\n });\n\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { redirect_url: updatedRedirectUrl });\n if (window.isAutoFraudScreener === true) {\n // Wait for Evina to Check Fraud First\n const timer = setInterval(() => {\n if (window.isEvinaSessionChecked) {\n clearInterval(timer);\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-redirect-url', {\n redirect_url: updatedRedirectUrl\n });\n setTimeout(() => {\n window.location.href = updatedRedirectUrl;\n }, 0);\n }\n }, 100);\n } else if (autoRedirect === true) {\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-redirect-url', { redirect_url: updatedRedirectUrl });\n setTimeout(() => {\n window.location.href = updatedRedirectUrl;\n }, 0);\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: updatedRedirectUrl\n })\n };\n } else {\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: updatedRedirectUrl\n })\n };\n }\n } else {\n if (subscription_url && subscription_url != null) {\n return {\n type: 'SUBCRIBE_AJAX',\n result: RDS.NothingYet()\n };\n }\n if (redirect_url) {\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { redirect_url });\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: redirect_url\n })\n };\n }\n\n tracker.advancedInFlow('tallyman.v1-one-click', 'get-redirect-url');\n const { redirect_url: newRedirectUrl } = await getRedirectUrl({\n window,\n maybeConfig: config,\n extraParams: {\n ...(operator && { operator }),\n ...extraParams\n }\n });\n tracker.advancedInFlow('tallyman.v1-one-click', 'get-redirect-url-success');\n\n // add empellow token for specific country\n const updated_redirect_url = await addEmpelloToken({\n currentRedirectUrl: newRedirectUrl,\n country: config.country\n });\n\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { updated_redirect_url });\n\n if (autoRedirect === true || window.isAutoFraudScreener === true) {\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-redirect-url', { updated_redirect_url });\n\n setTimeout(() => {\n // eslint-disable-next-line camelcase\n window.location.href = updated_redirect_url;\n }, 0);\n } else {\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: updated_redirect_url\n })\n };\n }\n }\n } catch (ex) {\n console.warn(ex);\n tracker.recedeInFlow('tallyman.v1-one-click', 'get-redirect-url-failure', {\n errorType: 'UnknownError'\n });\n return rejectWithValue({\n errorType: 'UnknownError',\n error: ex.toString()\n });\n }\n }\n);\n\n/**\n * subscribeUrlAction\n * @returns {type: ' 'oneClickFlow/submitMSISDNAction', payload: {type: PossibleTypes.MO, result: PINEntryState}}\n \n * Calls oneclick subscripe api to subscribe the user\n * Returns a product url\n */\ninterface OneClickSubscribeArgs {\n window: Window;\n autoRedirect?: boolean;\n extraParams?: IHash;\n}\nexport const subscribeUrlAction = createAsyncThunk<\n AJAXSUBSCRIBEState,\n OneClickSubscribeArgs,\n {\n rejectValue: SubscribeFailure;\n }\n>('oneClickFlow/subscribeUrlAction', async ({ window, autoRedirect, extraParams }, { getState, rejectWithValue }) => {\n const state: RootState = getState();\n\n const { subscription_url } = state.strategy.currentState.data;\n try {\n // Start Call to Subscribe ajax\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-subscribe');\n const product_url = await await subscribe(subscription_url, extraParams);\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-subscribe-success', { product_url });\n // End Call to Subscribe ajax\n\n if (autoRedirect === true) {\n tracker.customEvent('Flow', 'advance-auto', 'click-product-url', { product_url });\n window.location.href = product_url;\n }\n return {\n type: 'SUBCRIBE_AJAX',\n result: RDS.Success({\n productUrl: product_url\n })\n };\n } catch (ex) {\n console.warn(ex);\n\n tracker.recedeInFlow('tallyman.v1-one-click', 'click-subscribe-failure', { error: ex.toString() });\n\n return rejectWithValue({\n errorType: 'UnknownError',\n error: ex.toString(),\n productUrl: ex.productUrl\n });\n }\n});\n\nconst oneClickFlowSlice = createSlice({\n name: 'oneClickFlow',\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getRedirectUrlAction.pending, (state) => {\n state.currentState = { type: 'GET_REDIRECT_URL', result: RDS.Loading() };\n })\n .addCase(getRedirectUrlAction.fulfilled, (state, action: PayloadAction<GETREDIRECTUrlState>) => {\n state.currentState = action.payload;\n })\n .addCase(getRedirectUrlAction.rejected, (state, action: PayloadAction<IGETREDIRECTURLFailure>) => {\n state.currentState = {\n type: 'GET_REDIRECT_URL',\n result: RDS.Failure(action.payload)\n };\n })\n .addCase(subscribeUrlAction.pending, (state) => {\n state.currentState = { type: 'SUBCRIBE_AJAX', result: RDS.Loading() };\n })\n .addCase(subscribeUrlAction.fulfilled, (state, action: PayloadAction<AJAXSUBSCRIBEState>) => {\n state.currentState = action.payload;\n })\n .addCase(subscribeUrlAction.rejected, (state, action: PayloadAction<SubscribeFailure>) => {\n state.currentState = {\n type: 'SUBCRIBE_AJAX',\n result: RDS.Failure(action.payload)\n };\n });\n }\n});\n\n// Export reducers and actions\nexport const { reducer: oneClickFlowReducer, actions: oneClickFlowActions } = oneClickFlowSlice;\n\n// If you have selectors or thunks related to this slice, export them as named exports as well\nexport const selectOneClickFlowState = (state: any) => state.oneClickFlow;\n"],"names":["useOneClickFlowState","useSelector","state","oneClickFlow","currentState","oneClickFlowMatch","_a","getRedirectUrl","subscribe","type","result","addEmpelloToken","currentRedirectUrl","country","toLowerCase","Promise","resolve","checkEmpelloAvailability","setInterval","window","Empello","clearInterval","_b","sent","getToken","empelloToken","token","updateUrlParameter","fetchJsonp","_url","url","ouisys_callback_function","concat","Math","floor","random","reject","arg","indexOf","script","document","createElement","src","id","body","appendChild","onerror","Error","maybeConfig","extraParams","slug","queryString","apiAction","customDomain","evinaTid","tid","offer","pac_analytics","visitor","s","location","search","substr","search_1","length","map","__read","k","v","join","Object","keys","forEach","element","index","paramName","paramValue","pattern","RegExp","replace","newUrl","replaceUrlParam","rockmanId","host","DEV_BASE_URL","bupperizeCountry","result_1","_c","success","identifyError","message","subscription_url","redirect_url","action","fetch","then","x","json","loadScriptInnerHtml","source","redirectUrlWithReplacedUniqid","searchObj","searchToObject","encodeURIComponent","href","__awaiter","extraParamsQs","isCleanTraffic","shouldBlock","subscribeError","productUrl","product_url","getRedirectUrlBupperWay","xcid","split","DEV_BASE_URL_BUPPER","initialState","RDS.NothingYet","getRedirectUrlAction","createAsyncThunk","isGetRedirectBupperWay","autoRedirect","getState","rejectWithValue","strategy","data","config","operator","_d","updatedRedirectUrl_1","tracker","customEvent","isAutoFraudScreener","advancedInFlow","setTimeout","RDS.Success","redirectUrl","timer_1","isEvinaSessionChecked","__assign","newRedirectUrl","updated_redirect_url_1","updated_redirect_url","console","warn","ex_1","recedeInFlow","errorType","error","toString","subscribeUrlAction","ex_2","oneClickFlowSlice","createSlice","name","reducers","extraReducers","builder","addCase","pending","RDS.Loading","fulfilled","payload","rejected","RDS.Failure","oneClickFlowReducer","reducer","actions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oneClickFlow.js","sources":["../src/flows/oneClickFlow/hooks/useOneClickFlowState.ts","../src/flows/oneClickFlow/match.ts","../src/utilities/addEmpelloToken.ts","../src/utilities/replaceUrlParam.ts","../src/flows/oneClickFlow/api.ts","../src/flows/oneClickFlow/main.ts","../src/flows/oneClickFlow/oneClickFlowSlice.ts"],"sourcesContent":["import { useSelector as IuseSelector } from 'react-redux';\nimport { RootState } from '../../../sharedFlowTypes/StrategyTypes';\n\nexport const useOneClickFlowState = (useSelector: typeof IuseSelector) => {\n const currentState = useSelector((state: RootState) => state.oneClickFlow.currentState);\n return currentState;\n};\n","import * as RDS from '../../common-types/RemoteDataState';\nimport {\n IGETREDIRECTURLFailure,\n IGETREDIRECTURLSuccess,\n OneClickFlowCurrentState,\n SubscribeFailure,\n SubscribeSuccess\n} from '../../sharedFlowTypes/OneClickTypes';\n\nfunction oneClickFlowMatch<R>({\n getRedirectUrl,\n subscribe\n}: {\n getRedirectUrl: (rds: RDS.RemoteDataState<IGETREDIRECTURLFailure, IGETREDIRECTURLSuccess>) => R;\n subscribe?: (rds: RDS.RemoteDataState<SubscribeFailure, SubscribeSuccess>) => R;\n}): (state: OneClickFlowCurrentState) => R {\n return (state) => {\n switch (state.type) {\n case 'GET_REDIRECT_URL':\n return getRedirectUrl(state.result);\n case 'SUBCRIBE_AJAX':\n return subscribe(state.result);\n default:\n // TODO - this should be an error or something\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return getRedirectUrl(state.result);\n }\n };\n}\n\nexport { oneClickFlowMatch };\n","import { updateUrlParameter } from '../pacman/queryString';\n\nexport async function addEmpelloToken({\n currentRedirectUrl,\n country\n}: {\n currentRedirectUrl: string;\n country: string;\n}) {\n if (country.toLowerCase() === 'pe') {\n // Empello script is added on server\n\n await new Promise<void>((resolve) => {\n // check if empello script is loaded and available\n const checkEmpelloAvailability = setInterval(() => {\n if (window.Empello) {\n clearInterval((checkEmpelloAvailability as unknown) as number);\n resolve();\n }\n }, 100);\n });\n if (typeof window !== 'undefined' && window.Empello) {\n // call getToken function from empello\n const token = await new Promise<string>((resolve) => {\n window.Empello?.getToken((empelloToken: string) => {\n resolve(empelloToken);\n });\n });\n\n const url = updateUrlParameter(currentRedirectUrl, 'empello_token', token);\n return url;\n }\n }\n\n return currentRedirectUrl;\n}\n","export const replaceUrlParam = (url: string, paramName: string, paramValue = '') => {\n const pattern = new RegExp(`\\\\b(${paramName}=).*?(&|#|$)`);\n if (url.search(pattern) >= 0) {\n return url.replace(pattern, `$1${paramValue}$2`);\n }\n const newUrl = url.replace(/[?#]$/, '');\n return `${newUrl + paramName}=${paramValue}&`;\n};\n","import { IHash } from '../../common-types/IHash';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nexport const getRedirectAPI = () => {};\n\nconst getUrlWithParams = (baseURL: string, params: IHash) => {\n const queryParams = new URLSearchParams(params).toString();\n return `${baseURL}${queryParams}`;\n};\n\nexport const oneClickSubscribe = async ({\n window,\n extraParams,\n url\n}: {\n window: Window;\n extraParams?: IHash;\n url: string;\n}) => {\n const evinaTid = window?.tid || '';\n const isCleanTraffic = window?.shouldBlock ? 'false' : 'true';\n const antifraudId = window?.antifraud_id || '';\n\n const extraParamsQs = Object.entries(extraParams || {})\n .map(([key, value]) => `${key}=${encodeURIComponent(value)}`)\n .join('&');\n\n try {\n const resultUrl = getUrlWithParams(url, {\n sam_evina_tid: evinaTid,\n antifraud_id: antifraudId,\n 'is-clean-traffic': isCleanTraffic,\n ...Object.fromEntries(new URLSearchParams(extraParamsQs))\n });\n\n const response = await fetch(resultUrl);\n const result = await response.json();\n return result;\n } catch (error) {\n console.error('Error fetching subscription:', error);\n throw error; // Rethrow or handle error as needed\n }\n};\n","import { IError } from '../../common-types/IError';\nimport { IHash } from '../../common-types/IHash';\nimport { IIDentifyUserResult, ILinkExtraParams, ISubscribeResult } from '../../sharedFlowTypes/OneClickTypes';\nimport { IConfig } from '../../sharedFlowTypes/StrategyTypes';\nimport { bupperizeCountry } from '../../utilities/bupperizeCountry';\nimport { loadScriptInnerHtml } from '../../utilities/loadScriptInnerHtml';\nimport { replaceUrlParam } from '../../utilities/replaceUrlParam';\nimport { searchToObject } from '../../utilities/searchToObject';\nimport { oneClickSubscribe } from './api';\n\nexport const additionalQueryString = `msisdnSubmitted=Y&legalCheckbox=Y&incentivizedCheckbox=Y&op_confirmCheckbox=N`;\n\nconst fetchJsonp: <T>(_url: string) => Promise<T> = (_url: string) => {\n let url = _url;\n const ouisys_callback_function = `ouisys_callback_function${Math.floor(Math.random() * 10000)}`;\n return new Promise((resolve, reject) => {\n // @ts-ignore\n window[ouisys_callback_function] = (arg) => {\n resolve(arg);\n };\n\n url += url.indexOf('?') === -1 ? '?' : '&';\n url += `jsonp=${ouisys_callback_function}`;\n const script = document.createElement('script');\n script.src = url;\n script.id = ouisys_callback_function;\n document.body.appendChild(script);\n\n // Caught if got 404/500\n script.onerror = () => {\n reject(new Error(`JSONP request to ${_url} failed`));\n };\n });\n};\n\nexport const getRedirectUrl = async ({\n window,\n maybeConfig,\n extraParams\n}: {\n window: Window;\n maybeConfig: IConfig;\n extraParams?: ILinkExtraParams;\n}): Promise<{\n subscription_url?: string;\n redirect_url?: string;\n action?: () => Promise<string>;\n}> => {\n if (typeof window === 'undefined') {\n // eslint-disable-next-line no-throw-literal, no-script-url\n throw \"javascript: console.error('SSR'); void 6\";\n } else {\n const { country, slug, queryString, apiAction } = maybeConfig;\n const customDomain = 'de-ads.tallymans.com';\n const evinaTid = typeof window !== 'undefined' && window.tid ? window.tid : '';\n\n const { offer } = window.pac_analytics.visitor;\n const s = window.location.search.substr(1);\n // @ts-ignore\n let search = (!!s && s.length > 0 ? [s] : []).concat((queryString || []).map(([k, v]) => `${k}=${v}`)).join('&');\n\n Object.keys(extraParams).forEach((element, index) => {\n // Check if search already has query parameters\n if (search.length > 0) {\n // If there are existing parameters, add '&' before appending the new one\n search += '&';\n }\n search = `${replaceUrlParam(search, element, extraParams[element])}${index === 1 ? '&' : ''}`;\n });\n const { rockmanId } = window.pac_analytics.visitor;\n\n if (apiAction === 'identify-user') {\n const host = (window as Window).DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?action=identify-user&country=${bupperizeCountry(\n country\n )}&slug=${slug}&device=${'smart'}&offerId=${offer}&rockman_id=${rockmanId}&sam_evina_tid=${evinaTid}&${search}`;\n const result = await fetchJsonp<IIDentifyUserResult>(url);\n if (result.success === false) {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user action:\\n${result.message}`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n return {\n subscription_url: result.subscription_url || result.redirect_url,\n action: () => subscribe(result.subscription_url)\n };\n }\n } else if (apiAction === 'he') {\n const host = (window as Window).DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?action=he&country=${bupperizeCountry(\n country\n )}&slug=${slug}&device=${'smart'}&offerId=${offer}&rockman_id=${rockmanId}&sam_evina_tid=${evinaTid}&${search}`;\n const result = await fetch(url).then((x) => x.json());\n if (result.success === false) {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user action:\\n${result.message}`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n loadScriptInnerHtml(result.source);\n return { redirect_url: result.redirectUrlWithReplacedUniqid };\n }\n } else {\n if (country.toLowerCase() === 'om') {\n const searchObj = searchToObject(window) as {\n redirect_url: string;\n url: string;\n msisdn: string;\n success: 'true' | 'false';\n };\n if (searchObj.success === 'false') {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n return { redirect_url: searchObj.redirect_url || searchObj.url };\n }\n }\n const url = `https://${customDomain}/tallyman/v1/?action=redirect&country=${bupperizeCountry(\n country\n )}&slug=${slug}&device=${'smart'}&offerId=${offer}&rockman_id=${rockmanId}&page=${encodeURIComponent(\n window?.location?.href\n )}&sam_evina_tid=${evinaTid}&${search}`;\n const result = await fetch(url).then((x) => x.json());\n\n if (result.success === false) {\n const identifyError = new Error(`Error in getRedirectUrl() identify-user action:\\n${result.message}`) as IError;\n identifyError.type = 'NotOn3g';\n throw identifyError;\n } else {\n return { redirect_url: result.redirect_url };\n }\n }\n }\n};\n\nexport const subscribe: (url: string, extraParams?: IHash) => Promise<string> = async (\n url: string,\n extraParams?: IHash\n) => {\n const result: ISubscribeResult = await oneClickSubscribe({\n window,\n extraParams,\n url\n });\n\n if (result.success === false) {\n const subscribeError = new Error(`Error in subscribe() one-click-subscribe action:\\n${result.message}`) as {\n productUrl: string;\n } & IError;\n subscribeError.type = result.message === 'ALREADY SUBSCRIBED' ? 'AlreadySubscribed' : 'SubscriptionError';\n subscribeError.productUrl = result.product_url ? result.product_url : '';\n throw subscribeError;\n } else {\n return result.product_url || result.redirect_url;\n }\n};\n\nexport const getRedirectUrlBupperWay = async (\n window: Window,\n maybeConfig: IConfig,\n extraParams?: ILinkExtraParams\n): Promise<string> => {\n if (typeof window === 'undefined') {\n // eslint-disable-next-line no-script-url\n return \"javascript: console.error('SSR'); void 6\";\n }\n const { country, slug, queryString } = maybeConfig;\n const { offer } = window.pac_analytics.visitor;\n const s = window.location.search.substr(1);\n // @ts-ignore\n const search = (!!s && s.length > 0 ? [s] : []).concat((queryString || []).map(([k, v]) => `${k}=${v}`)).join('&');\n const extraParamsQs = !extraParams\n ? ''\n : `&${Object.keys(extraParams)\n .map((k) => `${k}=${extraParams[k]}`)\n .join('&')}`;\n\n // one click flow must use http not https\n const xcid = window.location.href.split('/')[3].split('?')[0];\n const evinaTid = typeof window !== 'undefined' && window.tid ? window.tid : '';\n\n const host = (window as Window).DEV_BASE_URL_BUPPER || '';\n return `${host}/${bupperizeCountry(country)}/${slug}?offer=${offer}&atmobirun=1&rockman_id=${\n window.pac_analytics.visitor.rockmanId\n }&redirPixels=${window.location.host}&sam_evina_tid=${evinaTid}&x-xcid=${xcid}${extraParamsQs}&${search}`;\n};\n","import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport { IHash } from '../../common-types/IHash';\nimport * as RDS from '../../common-types/RemoteDataState';\nimport {\n AJAXSUBSCRIBEState,\n GETREDIRECTUrlState,\n IGETREDIRECTURLFailure,\n OneClickFlowState,\n SubscribeFailure\n} from '../../sharedFlowTypes/OneClickTypes';\nimport { IMockFlowParams, RootState } from '../../sharedFlowTypes/StrategyTypes';\nimport { addEmpelloToken } from '../../utilities/addEmpelloToken';\nimport { searchToObject } from '../../utilities/searchToObject';\nimport { tracker } from '../../utilities/tracker';\nimport { getRedirectUrl, getRedirectUrlBupperWay, subscribe } from './main';\n\nexport const mockedRedirectUrlSuccessState: OneClickFlowState = {\n currentState: {\n type: 'GET_REDIRECT_URL',\n // @ts-ignore\n result: RDS.Success<IGETREDIRECTURLFailure, IGETREDIRECTURLSuccess>({ redirectUrl: '/product' })\n }\n};\n\nexport const mockedSubscribeAjaxState: OneClickFlowState = {\n currentState: {\n type: 'SUBCRIBE_AJAX',\n // @ts-ignore\n result: RDS.NothingYet()\n }\n};\n\nconst defaultInitialState: OneClickFlowState = {\n currentState: {\n type: 'GET_REDIRECT_URL',\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 'redirect-url-success-state':\n return mockedRedirectUrlSuccessState;\n case 'subscribe-ajax-state':\n return mockedSubscribeAjaxState;\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 GetRedirectUrlArgs {\n window: Window;\n extraParams?: IHash;\n autoRedirect?: boolean;\n isGetRedirectBupperWay?: boolean;\n ignoreUrlParams?: boolean;\n}\n/**\n * getRedirectUrlAction\n * @returns {type: ' 'oneClickFlow/getRedirectUrlAction', payload: {type: PossibleTypes, result: GETREDIRECTUrlState}}\n \n * Calls redirect api to get a redirect url for the user to be redirected to\n * Can also create a bupper redirect url\n */\nexport const getRedirectUrlAction = createAsyncThunk<\n GETREDIRECTUrlState,\n GetRedirectUrlArgs,\n {\n rejectValue: IGETREDIRECTURLFailure;\n }\n>(\n 'oneClickFlow/getRedirectUrlAction',\n // @ts-ignore\n async ({ window, isGetRedirectBupperWay, extraParams, autoRedirect }, { getState, rejectWithValue }) => {\n const state: RootState = getState();\n const search = searchToObject(window) as IMockFlowParams<any>;\n if (search['mock-flow']) {\n return initialState.currentState;\n }\n if (!state?.strategy?.currentState?.data?.config) {\n return rejectWithValue({\n errorType: 'UnexpectedState'\n });\n }\n\n const { config, subscription_url, redirect_url, operator } = state.strategy.currentState.data;\n try {\n if (isGetRedirectBupperWay === true) {\n const redirectUrl = await getRedirectUrlBupperWay(window, config, {\n ...(operator && { operator }),\n ...extraParams\n });\n\n // add empellow token for specific country\n const updatedRedirectUrl = await addEmpelloToken({\n currentRedirectUrl: redirectUrl,\n country: config.country\n });\n\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { redirect_url: updatedRedirectUrl });\n if (window.isAutoFraudScreener === true) {\n // Wait for Evina to Check Fraud First\n const timer = setInterval(() => {\n if (window.isEvinaSessionChecked) {\n clearInterval(timer);\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-redirect-url', {\n redirect_url: updatedRedirectUrl\n });\n setTimeout(() => {\n window.location.href = updatedRedirectUrl;\n }, 0);\n }\n }, 100);\n } else if (autoRedirect === true) {\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-redirect-url', { redirect_url: updatedRedirectUrl });\n setTimeout(() => {\n window.location.href = updatedRedirectUrl;\n }, 0);\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: updatedRedirectUrl\n })\n };\n } else {\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: updatedRedirectUrl\n })\n };\n }\n } else {\n if (subscription_url && subscription_url != null) {\n return {\n type: 'SUBCRIBE_AJAX',\n result: RDS.NothingYet()\n };\n }\n if (redirect_url) {\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { redirect_url });\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: redirect_url\n })\n };\n }\n\n tracker.advancedInFlow('tallyman.v1-one-click', 'get-redirect-url');\n const { redirect_url: newRedirectUrl } = await getRedirectUrl({\n window,\n maybeConfig: config,\n extraParams: {\n ...(operator && { operator }),\n ...extraParams\n }\n });\n tracker.advancedInFlow('tallyman.v1-one-click', 'get-redirect-url-success');\n\n // add empellow token for specific country\n const updated_redirect_url = await addEmpelloToken({\n currentRedirectUrl: newRedirectUrl,\n country: config.country\n });\n\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { updated_redirect_url });\n\n if (autoRedirect === true || window.isAutoFraudScreener === true) {\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-redirect-url', { updated_redirect_url });\n\n setTimeout(() => {\n // eslint-disable-next-line camelcase\n window.location.href = updated_redirect_url;\n }, 0);\n } else {\n return {\n type: 'GET_REDIRECT_URL',\n result: RDS.Success({\n redirectUrl: updated_redirect_url\n })\n };\n }\n }\n } catch (ex) {\n console.warn(ex);\n tracker.recedeInFlow('tallyman.v1-one-click', 'get-redirect-url-failure', {\n errorType: 'UnknownError'\n });\n return rejectWithValue({\n errorType: 'UnknownError',\n error: ex.toString()\n });\n }\n }\n);\n\n/**\n * subscribeUrlAction\n * @returns {type: ' 'oneClickFlow/submitMSISDNAction', payload: {type: PossibleTypes.MO, result: PINEntryState}}\n \n * Calls oneclick subscripe api to subscribe the user\n * Returns a product url\n */\ninterface OneClickSubscribeArgs {\n window: Window;\n autoRedirect?: boolean;\n extraParams?: IHash;\n}\nexport const subscribeUrlAction = createAsyncThunk<\n AJAXSUBSCRIBEState,\n OneClickSubscribeArgs,\n {\n rejectValue: SubscribeFailure;\n }\n>('oneClickFlow/subscribeUrlAction', async ({ window, autoRedirect, 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 { subscription_url } = state.strategy.currentState.data;\n try {\n // Start Call to Subscribe ajax\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-subscribe');\n const product_url = await await subscribe(subscription_url, extraParams);\n tracker.advancedInFlow('tallyman.v1-one-click', 'click-subscribe-success', { product_url });\n // End Call to Subscribe ajax\n\n if (autoRedirect === true) {\n tracker.customEvent('Flow', 'advance-auto', 'click-product-url', { product_url });\n window.location.href = product_url;\n }\n return {\n type: 'SUBCRIBE_AJAX',\n result: RDS.Success({\n productUrl: product_url\n })\n };\n } catch (ex) {\n console.warn(ex);\n\n tracker.recedeInFlow('tallyman.v1-one-click', 'click-subscribe-failure', { error: ex.toString() });\n\n return rejectWithValue({\n errorType: 'UnknownError',\n error: ex.toString(),\n productUrl: ex.productUrl\n });\n }\n});\n\nconst oneClickFlowSlice = createSlice({\n name: 'oneClickFlow',\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(getRedirectUrlAction.pending, (state) => {\n state.currentState = { type: 'GET_REDIRECT_URL', result: RDS.Loading() };\n })\n .addCase(getRedirectUrlAction.fulfilled, (state, action: PayloadAction<GETREDIRECTUrlState>) => {\n state.currentState = action.payload;\n })\n .addCase(getRedirectUrlAction.rejected, (state, action: PayloadAction<IGETREDIRECTURLFailure>) => {\n state.currentState = {\n type: 'GET_REDIRECT_URL',\n result: RDS.Failure(action.payload)\n };\n })\n .addCase(subscribeUrlAction.pending, (state) => {\n state.currentState = { type: 'SUBCRIBE_AJAX', result: RDS.Loading() };\n })\n .addCase(subscribeUrlAction.fulfilled, (state, action: PayloadAction<AJAXSUBSCRIBEState>) => {\n state.currentState = action.payload;\n })\n .addCase(subscribeUrlAction.rejected, (state, action: PayloadAction<SubscribeFailure>) => {\n state.currentState = {\n type: 'SUBCRIBE_AJAX',\n result: RDS.Failure(action.payload)\n };\n });\n }\n});\n\n// Export reducers and actions\nexport const { reducer: oneClickFlowReducer, actions: oneClickFlowActions } = oneClickFlowSlice;\n\n// If you have selectors or thunks related to this slice, export them as named exports as well\nexport const selectOneClickFlowState = (state: any) => state.oneClickFlow;\n"],"names":["useOneClickFlowState","useSelector","state","oneClickFlow","currentState","oneClickFlowMatch","_a","getRedirectUrl","subscribe","type","result","addEmpelloToken","currentRedirectUrl","country","toLowerCase","Promise","resolve","checkEmpelloAvailability","setInterval","window","Empello","clearInterval","_b","sent","getToken","empelloToken","token","updateUrlParameter","oneClickSubscribe","extraParams","url","evinaTid","tid","isCleanTraffic","shouldBlock","antifraudId","antifraud_id","extraParamsQs","Object","entries","map","__read","key","value","concat","encodeURIComponent","join","baseURL","params","__assign","sam_evina_tid","fromEntries","URLSearchParams","queryParams","toString","resultUrl","fetch","json","console","error","error_1","fetchJsonp","_url","ouisys_callback_function","Math","floor","random","reject","arg","indexOf","script","document","createElement","src","id","body","appendChild","onerror","Error","maybeConfig","slug","queryString","apiAction","customDomain","offer","pac_analytics","visitor","s","location","search","substr","search_1","length","k","v","keys","forEach","element","index","paramName","paramValue","pattern","RegExp","replace","newUrl","replaceUrlParam","rockmanId","host","DEV_BASE_URL","bupperizeCountry","result_1","_c","success","identifyError","message","subscription_url","redirect_url","action","then","x","loadScriptInnerHtml","source","redirectUrlWithReplacedUniqid","searchObj","searchToObject","href","__awaiter","subscribeError","productUrl","product_url","getRedirectUrlBupperWay","xcid","split","DEV_BASE_URL_BUPPER","mockedRedirectUrlSuccessState","RDS.Success","redirectUrl","mockedSubscribeAjaxState","RDS.NothingYet","defaultInitialState","initialState","setInitialState","getRedirectUrlAction","createAsyncThunk","isGetRedirectBupperWay","autoRedirect","getState","rejectWithValue","_f","_d","strategy","_e","data","config","errorType","operator","_g","updatedRedirectUrl_1","tracker","customEvent","isAutoFraudScreener","advancedInFlow","setTimeout","timer_1","isEvinaSessionChecked","newRedirectUrl","updated_redirect_url_1","updated_redirect_url","warn","ex_1","recedeInFlow","subscribeUrlAction","ex_2","oneClickFlowSlice","createSlice","name","reducers","extraReducers","builder","addCase","pending","RDS.Loading","fulfilled","payload","rejected","RDS.Failure","oneClickFlowReducer","reducer","actions"],"mappings":"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"}
|
package/dist/pinFlow.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__awaiter as t,__generator as r,__read as e,__assign as n}from"tslib";import{createAsyncThunk as i,createSlice as a}from"@reduxjs/toolkit";import o from"awesome-phonenumber";import{N as c,S as s,L as u,F as d}from"./RemoteDataState-lcf8PfJd.js";import{c as l,P as p}from"./strategySlice-BoKYQ6OI.js";import{s as v}from"./storeMsisdn-Cjq8_qYH.js";import{t as f}from"./tracker-DaaILhEr.js";import{b as m}from"./bupperizeCountry-CEtt0MKz.js";import{l as y,r as S,a as w}from"./helpers-xPhGBX-B.js";import{l as h}from"./loadScriptInnerHtml-BzQm-AFb.js";import{searchToObject as I}from"./searchToObject.js";import"./getConfig.js";import"./tryGetIPRangeName-QW-9NgzE.js";import"pacman-client";import"uuid";var b=function(t){return t((function(t){return t.pinFlow.currentState}))};function g(t){var r=t.msisdnEntry,e=t.pinEntry;return function(t){switch(t.type){case"MSISDNEntry":return r(t.result);case"PINEntry":return e(t.result,t.data);default:throw new Error("Invalid State")}}}var _=function(t){return"be"===t?"undefined"!=typeof window&&!0===window.shouldBlock?"&is-clean-traffic=false":"&is-clean-traffic=true":""},E=function(n){var i=n.window,a=n.country,o=n.slug,c=n.device,s=n.offer,u=n.msisdn,d=n.rockmanId,l=n.extraParams,p=n.search,v=n.uniqid,f=n.evinaTid;return t(void 0,void 0,void 0,(function(){var t,n,m,y,S,w,h;return r(this,(function(r){return t=_(a),n="&".concat(Object.keys(l).map((function(t){return"".concat(t,"=").concat(l[t])})).join("&")),m={action:"trigger-pin",country:a,slug:o,device:c,offerId:s,msisdn:u,rockman_id:d,sam_evina_tid:f,page:encodeURIComponent(null===(h=null==i?void 0:i.location)||void 0===h?void 0:h.href),language_code:i.languageCode||"",antifraud_id:i.antifraud_id||"",partner_transaction_id:i.partner_transaction_id||"",partner_timestamp:i.partner_timestamp||"",partner_cid:i.partner_cid||"",uniqid:v||""},y=Object.entries(m).filter((function(t){var r=e(t,2);return r[0],r[1]})).map((function(t){var r=e(t,2),n=r[0],i=r[1];return"".concat(n,"=").concat(i)})).join("&"),S=i.DEV_BASE_URL||"",w="".concat(S,"/tallyman/v1/?").concat(y).concat(t).concat(n,"&").concat(p),[2,fetch(w).then((function(t){return t.json()}))]}))}))},k=function(n){var i=n.window,a=n.country,o=n.slug,c=n.device,s=n.offer,u=n.rockmanId,d=n.pin,l=n.extraParams,p=n.uniqid,v=n.evinaTid;return t(void 0,void 0,void 0,(function(){var t,n,f,y,S,w,h;return r(this,(function(r){return t=_(a),n="&".concat(Object.keys(l).map((function(t){return"".concat(t,"=").concat(l[t])})).join("&")),f={action:"verify-pin",country:m(a),slug:o,device:c,offerId:s,rockman_id:u,pin:d,page:encodeURIComponent(null===(h=null==i?void 0:i.location)||void 0===h?void 0:h.href),language_code:i.languageCode||"",antifraud_id:i.antifraud_id||"",ClickID:i.antifraud_click_id||"",partner_cid:i.partner_cid||"",sam_evina_tid:v,uniqid:p},y=Object.entries(f).filter((function(t){var r=e(t,2);return r[0],r[1]})).map((function(t){var r=e(t,2),n=r[0],i=r[1];return"".concat(n,"=").concat(i)})).join("&"),S=i.DEV_BASE_URL||"",w="".concat(S,"/tallyman/v1/?").concat(y).concat(t).concat(n),[2,fetch(w).then((function(t){return t.json()}))]}))}))},U=function(e){var i=e.window,a=e.country,o=e.slug,c=e.device,s=e.offer,u=e.rockmanId,d=e.operator,l=e.uniqid;return t(void 0,void 0,void 0,(function(){var t,e,p,v,f;return r(this,(function(r){return t=i.location.href,e=i.pac_analytics.visitor.ip,p=new URLSearchParams(n(n({action:"mcp-shield",country:a,slug:o,device:c,offerId:s.toString(),rockman_id:u,client_lpu:t},d&&{operator:d}),l&&{uniqid:l})),e&&p.append("client_ip",e),v=i.DEV_BASE_URL||"",f="".concat(v,"/tallyman/v1/?").concat(p.toString()),[2,fetch(f).then((function(t){return t.json()}))]}))}))};function N(e,i,a,o){return t(this,void 0,void 0,(function(){var t;return r(this,(function(r){return!0===(t=n({offer:e.pac_analytics.visitor.offer},i||{})).automaticallySubmitAllOperators&&t.operators&&t.operators.length>0?[2,A(e,t,a,t.operators,o)]:[2,j(e,t,a,o)]}))}))}var D="";function j(e,n,i,a){return t(this,void 0,void 0,(function(){var t,o,c,s,u,d,l,p,v,f,m,y,S,w,b,g,_,k;return r(this,(function(r){switch(r.label){case 0:if(!i)throw(t=new Error("Error in submitMSISDN() trigger-pin action")).type="InvalidMSISDN",t;return o=a||{},c=!1,"true"===(null==(s=I(e))?void 0:s.success)&&"1"===s["msisdn-alias"]&&(o["skip-validation"]="1"),"1"===o["skip-validation"]&&(c=!0),u=c?i:i.match(/\d+/gi).join(""),d=e.pac_analytics.visitor.rockmanId,l=n.slug,p=n.country,v=n.device,f=n.offer,m=-1===e.location.search.indexOf("redirect-back=1")&&e.location.search.substr(1)||"",y=D&&""!==D?"&mcpUniqid=".concat(D):"",S=void 0!==e&&e.tid?e.tid:"",[4,E({window:e,country:p,slug:l,device:v,offer:f,msisdn:u,rockmanId:d,extraParams:o,search:m,uniqid:y,evinaTid:S})];case 1:if(!1!==(w=r.sent()).success)return[3,2];switch(b=new Error("Error in submitMSISDN() trigger-pin action:\n".concat(w.message)),w.message){case"ALREADY SUBSCRIBED":b.type="AlreadySubscribed";break;case"INVALID MSISDN":b.type="InvalidMSISDN";break;default:b.type=null}throw b.productUrl=w.product_url?w.product_url:"",console.error(b),b;case 2:if(e.operator=w.operator,g={kw:{kw_viva:"kw_viva"},k2:{k2_viva:"k2_viva"},bh:{bh_viva:"bh_viva"}},!(p&&w.operator&&(g[p.toLowerCase()]&&g[p.toLowerCase()][w.operator.toLowerCase()]||"iq"===p.toLowerCase()))||e.isCallBlockApi||e.Empello)return[3,6];r.label=3;case 3:return r.trys.push([3,5,,6]),[4,U({window:e,country:p,slug:l,device:v,offer:f,rockmanId:d,operator:w.operator,uniqid:y})];case 4:return!1===(_=r.sent()).success?console.warn(_.message):(h(_.source),D=_.uniqid),[3,6];case 5:return k=r.sent(),console.warn(k),[3,6];case 6:return w.javascript&&h(w.javascript),[2,{type:"SingleMSISDNSubmissionResult",pin:w.pin,uniqidResult:D,operator:w.operator,redirectUrl:null==w?void 0:w.redirect_to_url}]}}))}))}function A(e,i,a,o,c){return t(this,void 0,void 0,(function(){var s,u,d=this;return r(this,(function(l){switch(l.label){case 0:return[4,Promise.all(o.map((function(o){return t(d,void 0,void 0,(function(){var t,s;return r(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,j(e,i,a,n(n({},c),{operator:o}))];case 1:return t=r.sent(),[2,S(n(n({},t),{operator:o}))];case 2:return s=r.sent(),[2,y(s)];case 3:return[2]}}))}))})))];case 1:if(s=l.sent(),u=s.find((function(t){var r;return"left"===t.type&&"AlreadySubscribed"===(null===(r=t.value)||void 0===r?void 0:r.type)})),s.every((function(t){return"left"===t.type})))throw s[0].value;if(u)throw u.value;return[2,{type:"MultiOperatorMSISDNSubmissionResult"}]}}))}))}function C(n,i,a,o){return t(this,void 0,void 0,(function(){var c,s,u,d,l,p,v,f,y,S,h,b,g,_,E,U;return r(this,(function(N){switch(N.label){case 0:if(n.hostCountry&&n.hostSlug&&(a.country=n.hostCountry,a.slug=n.hostSlug),c=a.slug,s=a.country,u=a.device,d=n.pac_analytics.visitor.offer,l=o||{},"true"===(null==(p=I(n))?void 0:p.success)&&"1"===p["msisdn-alias"]&&(l["skip-validation"]="1"),v=n.pac_analytics.visitor.rockmanId,!i)throw(f=new Error("Error in submitMSISDN() verify-pin action:\n Pin Cannot Be Empty")).type="InvalidPIN",f;return y=""!==D?"&mcpUniqid=".concat(D):"",S=void 0!==n&&n.tid?n.tid:"",[4,k({window:n,country:s,slug:c,device:u,offer:d,rockmanId:v,pin:i,extraParams:l,uniqid:y,evinaTid:S})];case 1:if(!1!==(h=N.sent()).success)return[3,2];throw b={"pin does not match":"InvalidPIN","mcp blocked":"SessionBlocked"}[h.message],(E=new Error("Error in submitMSISDN() verify-pin action:\n".concat(b))).type=b||"InvalidPIN",E;case 2:return!0!==h.async?[3,4]:h.product_url&&""!==h.product_url&&"es"===(null==s?void 0:s.toLowerCase())?[2,{gatewayRedirectUrl:h.product_url}]:(g=function(){return function(n){var i=n.window,a=n.country,o=n.slug,c=n.device,s=n.offer,u=n.rockmanId;return t(void 0,void 0,void 0,(function(){var t,n,d,l;return r(this,(function(r){return t={action:"check-subscription",country:m(a),slug:o,device:c,offerId:s,rockman_id:u},n=Object.entries(t).filter((function(t){var r=e(t,2);return r[0],null!=r[1]})).map((function(t){var r=e(t,2),n=r[0],i=r[1];return"".concat(n,"=").concat(encodeURIComponent(i))})).join("&"),d=i.DEV_BASE_URL||"",l="".concat(d,"/tallyman/v1/?").concat(n),[2,fetch(l).then((function(t){return t.json()}))]}))}))}({window:n,country:s,slug:c,device:u,offer:d,rockmanId:v,extraParams:o})},[4,w(g,100,(function(t){return t.success}),0)]);case 3:if(!0===(_=N.sent()).success)return U="ALREADY SUBSCRIBED"===h.message,[2,{productUrl:_.product_url||null,isAlreadySubscribed:U}];throw(E=new Error("Error in submitMSISDN() verify-pin action:\n".concat(_.message))).type="InvalidPIN",E;case 4:return U="ALREADY SUBSCRIBED"===h.message,[2,{productUrl:h.product_url||null,isAlreadySubscribed:U}]}}))}))}var M={currentState:{type:"MSISDNEntry",result:c()}},R=i("pinFlow/submitMSISDNAction",(function(e,i){var a=e.window,o=e.msisdn,s=e.extraParams,u=i.getState,d=i.dispatch,m=i.rejectWithValue;return t(void 0,void 0,void 0,(function(){var t,e,i,y,S,w,h,I,b,g,_,E;return r(this,(function(r){switch(r.label){case 0:t=u(),e=t.strategy.currentState.data,i=e.config,y=e.isHeaderEnrichmentSuccess,S=null===(E=t.pinFlow)||void 0===E?void 0:E.currentState,r.label=1;case 1:return r.trys.push([1,5,,6]),"ps"===(null==i?void 0:i.country.toLowerCase())&&(null==i?void 0:i.slug.includes("shemaroo"))&&"+970"===F(null==i?void 0:i.country,o)&&(o=o.replace("970","972")),f.advancedInFlow("tallyman.v1-pin","msisdn-submitted",{msisdn:o}),[4,N(a,i,o)];case 2:return w=r.sent(),f.advancedInFlow("tallyman.v1-pin","msisdn-submission-success",{msisdn:o}),"SingleMSISDNSubmissionResult"===w.type&&w.redirectUrl&&(f.advancedInFlow("tallyman.v1-pin","msisdn-submission-success",{msisdn:o}),f.customEvent("Flow","advance-auto","msisdn-redirect",{redirectUrl:w.redirectUrl}),a.location.href=w.redirectUrl),s&&s.storeMsisdn&&"true"===s.storeMsisdn?[4,v(o).then((function(t){t&&t.data&&t.data.success?f.customEvent("Flow","advance-auto","msisdn-stored-success"):f.customEvent("Flow","advance-auto","msisdn-stored-failed")})).catch((function(t){f.customEvent("Flow","advance-auto","msisdn-stored-error",t)}))]:[3,4];case 3:r.sent(),r.label=4;case 4:return h="SingleMSISDNSubmissionResult"===w.type?w.operator:"",I={SA_MOBILY:6,SA_STC:4,SA_ZAIN:4},b=new Event("onPinPage"),null==a||a.dispatchEvent(b),[2,n(n({},S),{type:"PINEntry",result:c(),data:{actualPIN:"SingleMSISDNSubmissionResult"===w.type?w.pin:null,msisdn:o,operator:h,pinMaxLength:""!==h&&I[h]?I[h]:null,isHeaderEnrichmentSuccess:y}})];case 5:switch(g=r.sent(),console.warn(g),_=void 0,g.type){case"AlreadySubscribed":_="AlreadySubscribed";break;case"InvalidMSISDN":_="InvalidMSISDN";break;default:_="UnknownError"}return f.recedeInFlow("tallyman.v1-pin","msisdn-submission-failure",{msisdn:o,errorType:_,error:g.toString()}),y&&d(l({type:p.PIN,data:{isHeaderEnrichmentSuccess:y}})),[2,m({errorType:_,error:g.toString(),productUrl:g.productUrl})];case 6:return[2]}}))}))})),P=i("pinFlow/submitPinAction",(function(e,i){var a=e.window,o=e.msisdn,c=e.pin,u=e.extraParams,d=i.getState,l=i.rejectWithValue;return t(void 0,void 0,void 0,(function(){var t,e,i,p,m,y,S;return r(this,(function(r){switch(r.label){case 0:t=d(),e=t.strategy.currentState.data.config,i=null===(S=t.pinFlow)||void 0===S?void 0:S.currentState,r.label=1;case 1:return r.trys.push([1,5,,6]),f.advancedInFlow("tallyman.v1-pin","pin-submitted",{msisdn:o,pin:c}),[4,C(a,c,e,u)];case 2:return p=r.sent(),f.advancedInFlow("tallyman.v1-pin","pin-submission-success",{msisdn:o,pin:c,finalUrl:p.productUrl}),p.gatewayRedirectUrl&&""!==p.gatewayRedirectUrl&&(f.advancedInFlow("tallyman.v1-pin","gateway-redirect",{msisdn:o,pin:c,gatewayRedirectUrl:p.gatewayRedirectUrl}),a.location.href=p.gatewayRedirectUrl),u&&u.storeMsisdn&&"true"===u.storeMsisdn?[4,v(o).then((function(t){t&&t.data&&t.data.success?f.customEvent("Flow","advance-auto","msisdn-stored-success"):f.customEvent("Flow","advance-auto","msisdn-stored-failed")})).catch((function(t){f.customEvent("Flow","advance-auto","msisdn-stored-error",t)}))]:[3,4];case 3:r.sent(),r.label=4;case 4:return[2,n(n({},i),{type:"PINEntry",result:s({finalUrl:p.productUrl,isAlreadySubscribed:p.isAlreadySubscribed||!1})})];case 5:switch(m=r.sent(),console.warn(m),y=void 0,m.type){case"AlreadySubscribed":y="AlreadySubscribed";break;case"InvalidPIN":y="InvalidPIN";break;case"SessionBlocked":y="SessionBlocked";break;default:y="UnknownError"}return f.recedeInFlow("tallyman.v1-pin","pin-submission-failure",{msisdn:o,pin:c,error:m.toString(),errorType:y}),setTimeout((function(){m.productUrl&&(a.location.href=m.productUrl)}),0),[2,l({errorType:y,productUrl:m.productUrl})];case 6:return[2]}}))}))})),F=function(t,r){var e=new o(r,t.toUpperCase());return t&&r?"+".concat(e.getCountryCode()):""},L=a({name:"pinFlow",initialState:M,reducers:{backToStartAction:function(t){f.recedeInFlow("tallyman.v1-pin","pin-state","requested to change phone number"),t.currentState={type:"MSISDNEntry",result:c()}}},extraReducers:function(t){t.addCase(R.pending,(function(t){t.currentState={type:"MSISDNEntry",result:u()}})).addCase(R.fulfilled,(function(t,r){t.currentState=r.payload})).addCase(R.rejected,(function(t,r){t.currentState={type:"MSISDNEntry",result:d(r.payload)}})).addCase(P.pending,(function(t){t.currentState={type:"PINEntry",result:u()}})).addCase(P.fulfilled,(function(t,r){t.currentState=r.payload})).addCase(P.rejected,(function(t,r){t.currentState={type:"PINEntry",result:d(r.payload)}}))}}),B=L.reducer,q=L.actions.backToStartAction;export{q as backToStartAction,g as pinFlowMatch,B as pinFlowReducer,R as submitMSISDNAction,P as submitPinAction,b as usePinFlowState};
|
|
1
|
+
import{__awaiter as t,__generator as r,__read as e,__assign as n}from"tslib";import{createAsyncThunk as i,createSlice as a}from"@reduxjs/toolkit";import{N as o,S as c,L as s,F as u}from"./RemoteDataState-lcf8PfJd.js";import{c as d,P as l}from"./strategySlice-Dw14E22-.js";import{searchToObject as p}from"./searchToObject.js";import{s as v}from"./storeMsisdn-Cjq8_qYH.js";import{t as f}from"./tracker-DaaILhEr.js";import{b as m}from"./bupperizeCountry-CEtt0MKz.js";import{l as y,r as S,a as w}from"./helpers-xPhGBX-B.js";import{l as h}from"./loadScriptInnerHtml-BzQm-AFb.js";import"./getConfig.js";import"./tryGetIPRangeName-QW-9NgzE.js";import"./loadScriptSrc-Da4autZd.js";import"pacman-client";import"uuid";var I=function(t){return t((function(t){return t.pinFlow.currentState}))};function g(t){var r=t.msisdnEntry,e=t.pinEntry;return function(t){switch(t.type){case"MSISDNEntry":return r(t.result);case"PINEntry":return e(t.result,t.data);default:throw new Error("Invalid State")}}}var b=function(t){return"be"===t?"undefined"!=typeof window&&!0===window.shouldBlock?"&is-clean-traffic=false":"&is-clean-traffic=true":""},_=function(n){var i=n.window,a=n.country,o=n.slug,c=n.device,s=n.offer,u=n.msisdn,d=n.rockmanId,l=n.extraParams,p=n.search,v=n.uniqid,f=n.evinaTid;return t(void 0,void 0,void 0,(function(){var t,n,m,y,S,w,h;return r(this,(function(r){return t=b(a),n="&".concat(Object.keys(l).map((function(t){return"".concat(t,"=").concat(l[t])})).join("&")),m={action:"trigger-pin",country:a,slug:o,device:c,offerId:s,msisdn:u,rockman_id:d,sam_evina_tid:f,page:encodeURIComponent(null===(h=null==i?void 0:i.location)||void 0===h?void 0:h.href),language_code:i.languageCode||"",antifraud_id:i.antifraud_id||"",partner_transaction_id:i.partner_transaction_id||"",partner_timestamp:i.partner_timestamp||"",partner_cid:i.partner_cid||"",uniqid:v||""},y=Object.entries(m).filter((function(t){var r=e(t,2);return r[0],r[1]})).map((function(t){var r=e(t,2),n=r[0],i=r[1];return"".concat(n,"=").concat(i)})).join("&"),S=i.DEV_BASE_URL||"",w="".concat(S,"/tallyman/v1/?").concat(y).concat(t).concat(n,"&").concat(p),[2,fetch(w).then((function(t){return t.json()}))]}))}))},E=function(n){var i=n.window,a=n.country,o=n.slug,c=n.device,s=n.offer,u=n.rockmanId,d=n.pin,l=n.extraParams,p=n.uniqid,v=n.evinaTid;return t(void 0,void 0,void 0,(function(){var t,n,f,y,S,w,h;return r(this,(function(r){return t=b(a),n="&".concat(Object.keys(l).map((function(t){return"".concat(t,"=").concat(l[t])})).join("&")),f={action:"verify-pin",country:m(a),slug:o,device:c,offerId:s,rockman_id:u,pin:d,page:encodeURIComponent(null===(h=null==i?void 0:i.location)||void 0===h?void 0:h.href),language_code:i.languageCode||"",antifraud_id:i.antifraud_id||"",ClickID:i.antifraud_click_id||"",partner_cid:i.partner_cid||"",sam_evina_tid:v,uniqid:p},y=Object.entries(f).filter((function(t){var r=e(t,2);return r[0],r[1]})).map((function(t){var r=e(t,2),n=r[0],i=r[1];return"".concat(n,"=").concat(i)})).join("&"),S=i.DEV_BASE_URL||"",w="".concat(S,"/tallyman/v1/?").concat(y).concat(t).concat(n),[2,fetch(w).then((function(t){return t.json()}))]}))}))},k=function(e){var i=e.window,a=e.country,o=e.slug,c=e.device,s=e.offer,u=e.rockmanId,d=e.operator,l=e.uniqid;return t(void 0,void 0,void 0,(function(){var t,e,p,v,f;return r(this,(function(r){return t=i.location.href,e=i.pac_analytics.visitor.ip,p=new URLSearchParams(n(n({action:"mcp-shield",country:a,slug:o,device:c,offerId:s.toString(),rockman_id:u,client_lpu:t},d&&{operator:d}),l&&{uniqid:l})),e&&p.append("client_ip",e),v=i.DEV_BASE_URL||"",f="".concat(v,"/tallyman/v1/?").concat(p.toString()),[2,fetch(f).then((function(t){return t.json()}))]}))}))};function N(e,i,a,o){return t(this,void 0,void 0,(function(){var t;return r(this,(function(r){return!0===(t=n({offer:e.pac_analytics.visitor.offer},i||{})).automaticallySubmitAllOperators&&t.operators&&t.operators.length>0?[2,M(e,t,a,t.operators,o)]:[2,D(e,t,a,o)]}))}))}var U="";function D(e,n,i,a){return t(this,void 0,void 0,(function(){var t,o,c,s,u,d,l,v,f,m,y,S,w,I,g,b,E,N;return r(this,(function(r){switch(r.label){case 0:if(!i)throw(t=new Error("Error in submitMSISDN() trigger-pin action")).type="InvalidMSISDN",t;return o=a||{},c=!1,"true"===(null==(s=p(e))?void 0:s.success)&&"1"===s["msisdn-alias"]&&(o["skip-validation"]="1"),"1"===o["skip-validation"]&&(c=!0),u=c?i:i.match(/\d+/gi).join(""),d=e.pac_analytics.visitor.rockmanId,l=n.slug,v=n.country,f=n.device,m=n.offer,y=-1===e.location.search.indexOf("redirect-back=1")&&e.location.search.substr(1)||"",S=U&&""!==U?"&mcpUniqid=".concat(U):"",w=void 0!==e&&e.tid?e.tid:"",[4,_({window:e,country:v,slug:l,device:f,offer:m,msisdn:u,rockmanId:d,extraParams:o,search:y,uniqid:S,evinaTid:w})];case 1:if(!1!==(I=r.sent()).success)return[3,2];switch(g=new Error("Error in submitMSISDN() trigger-pin action:\n".concat(I.message)),I.message){case"ALREADY SUBSCRIBED":g.type="AlreadySubscribed";break;case"INVALID MSISDN":g.type="InvalidMSISDN";break;default:g.type=null}throw g.productUrl=I.product_url?I.product_url:"",console.error(g),g;case 2:if(e.operator=I.operator,b={kw:{kw_viva:"kw_viva"},k2:{k2_viva:"k2_viva"},bh:{bh_viva:"bh_viva"}},!(v&&I.operator&&(b[v.toLowerCase()]&&b[v.toLowerCase()][I.operator.toLowerCase()]||"iq"===v.toLowerCase()))||e.isCallBlockApi||e.Empello)return[3,6];r.label=3;case 3:return r.trys.push([3,5,,6]),[4,k({window:e,country:v,slug:l,device:f,offer:m,rockmanId:d,operator:I.operator,uniqid:S})];case 4:return!1===(E=r.sent()).success?console.warn(E.message):(h(E.source),U=E.uniqid),[3,6];case 5:return N=r.sent(),console.warn(N),[3,6];case 6:return I.javascript&&h(I.javascript),[2,{type:"SingleMSISDNSubmissionResult",pin:I.pin,uniqidResult:U,operator:I.operator,redirectUrl:null==I?void 0:I.redirect_to_url}]}}))}))}function M(e,i,a,o,c){return t(this,void 0,void 0,(function(){var s,u,d=this;return r(this,(function(l){switch(l.label){case 0:return[4,Promise.all(o.map((function(o){return t(d,void 0,void 0,(function(){var t,s;return r(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,D(e,i,a,n(n({},c),{operator:o}))];case 1:return t=r.sent(),[2,S(n(n({},t),{operator:o}))];case 2:return s=r.sent(),[2,y(s)];case 3:return[2]}}))}))})))];case 1:if(s=l.sent(),u=s.find((function(t){var r;return"left"===t.type&&"AlreadySubscribed"===(null===(r=t.value)||void 0===r?void 0:r.type)})),s.every((function(t){return"left"===t.type})))throw s[0].value;if(u)throw u.value;return[2,{type:"MultiOperatorMSISDNSubmissionResult"}]}}))}))}function P(n,i,a,o){return t(this,void 0,void 0,(function(){var c,s,u,d,l,v,f,y,S,h,I,g,b,_,k,N;return r(this,(function(D){switch(D.label){case 0:if(n.hostCountry&&n.hostSlug&&(a.country=n.hostCountry,a.slug=n.hostSlug),c=a.slug,s=a.country,u=a.device,d=n.pac_analytics.visitor.offer,l=o||{},"true"===(null==(v=p(n))?void 0:v.success)&&"1"===v["msisdn-alias"]&&(l["skip-validation"]="1"),f=n.pac_analytics.visitor.rockmanId,!i)throw(y=new Error("Error in submitMSISDN() verify-pin action:\n Pin Cannot Be Empty")).type="InvalidPIN",y;return S=""!==U?"&mcpUniqid=".concat(U):"",h=void 0!==n&&n.tid?n.tid:"",[4,E({window:n,country:s,slug:c,device:u,offer:d,rockmanId:f,pin:i,extraParams:l,uniqid:S,evinaTid:h})];case 1:if(!1!==(I=D.sent()).success)return[3,2];throw g={"pin does not match":"InvalidPIN","mcp blocked":"SessionBlocked"}[I.message],(k=new Error("Error in submitMSISDN() verify-pin action:\n".concat(g))).type=g||"InvalidPIN",k;case 2:return!0!==I.async?[3,4]:I.product_url&&""!==I.product_url&&"es"===(null==s?void 0:s.toLowerCase())?[2,{gatewayRedirectUrl:I.product_url}]:(b=function(){return function(n){var i=n.window,a=n.country,o=n.slug,c=n.device,s=n.offer,u=n.rockmanId;return t(void 0,void 0,void 0,(function(){var t,n,d,l;return r(this,(function(r){return t={action:"check-subscription",country:m(a),slug:o,device:c,offerId:s,rockman_id:u},n=Object.entries(t).filter((function(t){var r=e(t,2);return r[0],null!=r[1]})).map((function(t){var r=e(t,2),n=r[0],i=r[1];return"".concat(n,"=").concat(encodeURIComponent(i))})).join("&"),d=i.DEV_BASE_URL||"",l="".concat(d,"/tallyman/v1/?").concat(n),[2,fetch(l).then((function(t){return t.json()}))]}))}))}({window:n,country:s,slug:c,device:u,offer:d,rockmanId:f,extraParams:o})},[4,w(b,100,(function(t){return t.success||"invalid_pin"===t.message}),0)]);case 3:if(!0===(_=D.sent()).success)return N="ALREADY SUBSCRIBED"===I.message,[2,{productUrl:_.product_url||null,isAlreadySubscribed:N}];throw(k=new Error("Error in submitMSISDN() verify-pin action:\n".concat(_.message))).type="InvalidPIN",k;case 4:return N="ALREADY SUBSCRIBED"===I.message,[2,{productUrl:I.product_url||null,isAlreadySubscribed:N}]}}))}))}var j={currentState:{type:"PINEntry",result:o(),data:{actualPIN:"",msisdn:"",operator:"",pinMaxLength:4}}},A={currentState:{type:"PINEntry",result:c({finalUrl:"/product"}),data:{actualPIN:"",msisdn:"",operator:"",pinMaxLength:4}}},C={currentState:{type:"MSISDNEntry",result:u({errorType:"InvalidMSISDN",error:"Invalid Mobile Number"})}},R={currentState:{type:"MSISDNEntry",result:o()}},F=function(t){var r=p(t),e=new Event("onPinPage");if(!r["mock-flow"])return R;switch(r["current-state"]){case"msisdn-failure-state":return C;case"pin-state":return null==t||t.dispatchEvent(e),j;case"completed-state":return A;default:return console.error("Mock Flow not supported"),R}}(window),L=i("pinFlow/submitMSISDNAction",(function(e,i){var a=e.window,c=e.msisdn,s=e.extraParams,u=i.getState,p=i.dispatch,m=i.rejectWithValue;return t(void 0,void 0,void 0,(function(){var t,e,i,y,S,w,h,I,g,b,_,E,k,U,D;return r(this,(function(r){switch(r.label){case 0:if(t=u(),!(null===(U=null===(k=null===(E=null==t?void 0:t.strategy)||void 0===E?void 0:E.currentState)||void 0===k?void 0:k.data)||void 0===U?void 0:U.config))return[2,m({errorType:"UnexpectedState"})];e=t.strategy.currentState.data,i=e.config,y=e.isHeaderEnrichmentSuccess,S=null===(D=t.pinFlow)||void 0===D?void 0:D.currentState,r.label=1;case 1:return r.trys.push([1,5,,6]),"ps"===(null==i?void 0:i.country.toLowerCase())&&(null==i?void 0:i.slug.includes("shemaroo"))&&"+970"===T(null==i?void 0:i.country,c)&&(c=c.replace("970","972")),f.advancedInFlow("tallyman.v1-pin","msisdn-submitted",{msisdn:c}),[4,N(a,i,c)];case 2:return w=r.sent(),f.advancedInFlow("tallyman.v1-pin","msisdn-submission-success",{msisdn:c}),"SingleMSISDNSubmissionResult"===w.type&&w.redirectUrl&&(f.advancedInFlow("tallyman.v1-pin","msisdn-submission-success",{msisdn:c}),f.customEvent("Flow","advance-auto","msisdn-redirect",{redirectUrl:w.redirectUrl}),a.location.href=w.redirectUrl),s&&s.storeMsisdn&&"true"===s.storeMsisdn?[4,v(c).then((function(t){t&&t.data&&t.data.success?f.customEvent("Flow","advance-auto","msisdn-stored-success"):f.customEvent("Flow","advance-auto","msisdn-stored-failed")})).catch((function(t){f.customEvent("Flow","advance-auto","msisdn-stored-error",t)}))]:[3,4];case 3:r.sent(),r.label=4;case 4:return h="SingleMSISDNSubmissionResult"===w.type?w.operator:"",I={SA_MOBILY:6,SA_STC:4,SA_ZAIN:4},g=new Event("onPinPage"),null==a||a.dispatchEvent(g),[2,n(n({},S),{type:"PINEntry",result:o(),data:{actualPIN:"SingleMSISDNSubmissionResult"===w.type?w.pin:null,msisdn:c,operator:h,pinMaxLength:""!==h&&I[h]?I[h]:null,isHeaderEnrichmentSuccess:y}})];case 5:switch(b=r.sent(),console.warn(b),_=void 0,b.type){case"AlreadySubscribed":_="AlreadySubscribed";break;case"InvalidMSISDN":_="InvalidMSISDN";break;default:_="UnknownError"}return f.recedeInFlow("tallyman.v1-pin","msisdn-submission-failure",{msisdn:c,errorType:_,error:b.toString()}),y&&p(d({type:l.PIN,data:{isHeaderEnrichmentSuccess:y}})),[2,m({errorType:_,error:b.toString(),productUrl:b.productUrl})];case 6:return[2]}}))}))})),B=i("pinFlow/submitPinAction",(function(e,i){var a=e.window,o=e.msisdn,s=e.pin,u=e.extraParams,d=i.getState,l=i.rejectWithValue;return t(void 0,void 0,void 0,(function(){var t,e,i,p,m,y,S,w,h,I;return r(this,(function(r){switch(r.label){case 0:if(t=d(),!(null===(h=null===(w=null===(S=null==t?void 0:t.strategy)||void 0===S?void 0:S.currentState)||void 0===w?void 0:w.data)||void 0===h?void 0:h.config))return[2,l({errorType:"UnexpectedState"})];e=t.strategy.currentState.data.config,i=null===(I=t.pinFlow)||void 0===I?void 0:I.currentState,r.label=1;case 1:return r.trys.push([1,5,,6]),f.advancedInFlow("tallyman.v1-pin","pin-submitted",{msisdn:o,pin:s}),[4,P(a,s,e,u)];case 2:return p=r.sent(),f.advancedInFlow("tallyman.v1-pin","pin-submission-success",{msisdn:o,pin:s,finalUrl:p.productUrl}),p.gatewayRedirectUrl&&""!==p.gatewayRedirectUrl&&(f.advancedInFlow("tallyman.v1-pin","gateway-redirect",{msisdn:o,pin:s,gatewayRedirectUrl:p.gatewayRedirectUrl}),a.location.href=p.gatewayRedirectUrl),u&&u.storeMsisdn&&"true"===u.storeMsisdn?[4,v(o).then((function(t){t&&t.data&&t.data.success?f.customEvent("Flow","advance-auto","msisdn-stored-success"):f.customEvent("Flow","advance-auto","msisdn-stored-failed")})).catch((function(t){f.customEvent("Flow","advance-auto","msisdn-stored-error",t)}))]:[3,4];case 3:r.sent(),r.label=4;case 4:return[2,n(n({},i),{type:"PINEntry",result:c({finalUrl:p.productUrl,isAlreadySubscribed:p.isAlreadySubscribed||!1})})];case 5:switch(m=r.sent(),console.warn(m),y=void 0,m.type){case"AlreadySubscribed":y="AlreadySubscribed";break;case"InvalidPIN":y="InvalidPIN";break;case"SessionBlocked":y="SessionBlocked";break;default:y="UnknownError"}return f.recedeInFlow("tallyman.v1-pin","pin-submission-failure",{msisdn:o,pin:s,error:m.toString(),errorType:y}),setTimeout((function(){m.productUrl&&(a.location.href=m.productUrl)}),0),[2,l({errorType:y,productUrl:m.productUrl})];case 6:return[2]}}))}))})),x={PS:"970"},T=function(t,r){if(!t||!r)return"";var e=t.toUpperCase(),n=x[e];return n?"+".concat(n):(console.error("Country code not found for",t),"")},q=a({name:"pinFlow",initialState:F,reducers:{backToStartAction:function(t){f.recedeInFlow("tallyman.v1-pin","pin-state","requested to change phone number"),t.currentState={type:"MSISDNEntry",result:o()}}},extraReducers:function(t){t.addCase(L.pending,(function(t){t.currentState={type:"MSISDNEntry",result:s(),data:t.currentState.data}})).addCase(L.fulfilled,(function(t,r){t.currentState=r.payload})).addCase(L.rejected,(function(t,r){t.currentState={type:"MSISDNEntry",result:u(r.payload),data:t.currentState.data}})).addCase(B.pending,(function(t){t.currentState={type:"PINEntry",result:s(),data:t.currentState.data}})).addCase(B.fulfilled,(function(t,r){t.currentState=r.payload})).addCase(B.rejected,(function(t,r){t.currentState={type:"PINEntry",result:u(r.payload),data:t.currentState.data}}))}}),O=q.reducer,V=q.actions.backToStartAction;export{V as backToStartAction,g as pinFlowMatch,O as pinFlowReducer,L as submitMSISDNAction,B as submitPinAction,I as usePinFlowState};
|
|
2
2
|
//# sourceMappingURL=pinFlow.js.map
|